KarmaEngine
Game Engine for practical learning and research purposes
|
This file contains the macros for Karma's classes' general purpose use, including assertions and storage-class information (for multiplatforms). More...
Go to the source code of this file.
Macros | |
#define | KARMA_API |
Defining Karma's API macro for storage class information. | |
#define | BIT(x) |
Macro for bit-shift operation (left) | |
#define | KR_ASSERT(expr, ...) |
Karma's Assertion. | |
#define | KR_CORE_ASSERT(expr, ...) |
#define | KR_BIND_EVENT_FN(fn) |
Macro for std::bind routine. See https://en.cppreference.com/w/cpp/utility/functional/bind. | |
#define | KR_NONCOPYABLE(TypeName) |
Makes a type non-copyable and non-movable by deleting copy/move constructors and assignment/move operators. The macro should be placed in the public section of the type for better compiler diagnostic messages. Example usage: | |
#define | FUNCTION_NON_NULL_RETURN_START |
#define | FUNCTION_NON_NULL_RETURN_END |
#define | FORCEINLINE inline |
Typical inlining macro for clarity. | |
This file contains the macros for Karma's classes' general purpose use, including assertions and storage-class information (for multiplatforms).
#define BIT | ( | x | ) |
Macro for bit-shift operation (left)
Basically shifting 0000001 to x power of 2 (2^x). BIT(1) is 0000010
#define FORCEINLINE inline |
Typical inlining macro for clarity.
#define KARMA_API |
Defining Karma's API macro for storage class information.
#define KR_ASSERT | ( | expr, | |
... ) |
Karma's Assertion.
#define KR_BIND_EVENT_FN | ( | fn | ) |
Macro for std::bind routine. See https://en.cppreference.com/w/cpp/utility/functional/bind.
#define KR_NONCOPYABLE | ( | TypeName | ) |
Makes a type non-copyable and non-movable by deleting copy/move constructors and assignment/move operators. The macro should be placed in the public section of the type for better compiler diagnostic messages. Example usage: