| Name | Portable | Description |
| OOLUA_CLASS | Yes | Used for portable code which is to have bases exposed |
| OOLUA_CLASS_NO_BASES | Yes | Helper macro which informs the library there are no base classes for this class to be exposed. |
| OOLUA_PROXY_CLASS | No | Varadic macro which can be used to start the generating of a proxy class. If supported can be used with and without bases. |
| OOLUA_CLASS_END | Yes | Ends the generation of a proxy class. |
| OOLUA_BASIC | Yes | Required when using portable code for a class which has bases exposed. |
| OOLUA_BASES_START | Yes | List start of base classes |
| OOLUA_BASES_END | Yes | Ends the list of base classes |
| OOLUA_TYPEDEFS | Yes | Starts the list of additional information |
| OOLUA_END_TYPES | Yes | Ends the list of additional information |
| OOLUA_NO_TYPEDEFS | Yes | Defines that there is no additional information needed for the class |
| OOLUA_MEM_FUNC | No | Varadic macro for generating a member function |
| OOLUA_MEM_FUNC_CONST | No | Varadic macro for generating a constant member function |
| OOLUA_MEM_FUNC_RENAME | No | Varadic macro for generating a member function which is to be renamed |
| OOLUA_MEM_FUNC_CONST_RENAME | No | Varadic macro for generating a constant member function which is to be renamed |
| OOLUA_MEM_FUNC_X | Yes | Generates a function which has X parameters |
| OOLUA_MEM_FUNC_X_CONST | Yes | Generates a constant function which has X parameters |
| OOLUA_MEM_FUNC_X_RENAME | Yes | Generates a function with X parameters which is to be renamed |
| OOLUA_MEM_FUNC_X_CONST_RENAME | Yes | Generates a constant function with X parameters which is to be renamed |
| EXPORT_OOLUA_FUNCTIONS_X_CONST | Yes | Exports X functions for the class |
| EXPORT_OOLUA_FUNCTIONS_X_NON_CONST | Yes | Exports X constant functions for the class |
| EXPORT_OOLUA_FUNCTIONS_CONST | No | Varadic macro which exports constant functions for the class |
| EXPORT_OOLUA_FUNCTIONS_NON_CONST | No | Varadic macro which exports functions for the class |
| EXPORT_OOLUA_NO_FUNCTIONS | Yes | Helper macro which defines the class has not functions to export |
| OOLUA_CONSTRUCTORS_BEGIN | Yes | Starts the generation of constructors to make available |
| OOLUA_CONSTRUCTORS_END | Yes | Ends the generation of constructors |
| OOLUA_ONLY_DEFAULT_CONSTRUCTOR | Yes | Helper macro which only makes available a public default constructor |
| OOLUA_CONSTRUCTOR_X | Yes | Generates a constructor which takes X parameters |
| OOLUA_CONSTRUCTOR | No | Varadic macro which generates a constructor |