Core » Definitions and macros module

Library definitions and macros.

Defines

#define RLL_DEBUG
Flag defined if debug mode is enabled.
#define RLL_DOC
Flag defined if Doxygen documentation is being generated.
#define RLL_NO_DEBUG
Flag defined if debug mode is disabled.
#define RLL_QT_CORE
Flag defined if Qt::Core library is available and linked.
#define RLL_QT_GUI
Flag defined if Qt::Gui library is available and linked.
#define ___constexpr___
Expands to constexpr in C++20 mode, to nothing in C++17 mode.
#define ___inline___
Attribute macro intended for force inlining functions.
#define ___noinline___
Attribute macro intended for no inlining functions.

Define documentation

#define RLL_DEBUG

Flag defined if debug mode is enabled.

Enables some additional checks, majority of contract functionality and some assertions.

#define RLL_DOC

Flag defined if Doxygen documentation is being generated.

#define RLL_NO_DEBUG

Flag defined if debug mode is disabled.

Disables some additional checks, majority of contract functionality and some assertions.

#define RLL_QT_CORE

Flag defined if Qt::Core library is available and linked.

#define RLL_QT_GUI

Flag defined if Qt::Gui library is available and linked.

#define ___constexpr___

Expands to constexpr in C++20 mode, to nothing in C++17 mode.

#define ___inline___

Attribute macro intended for force inlining functions.

Forces inlining for the function.

Example usage:

___inline___ inline void func() { ... } // func will be inlined, if possible

In some cases, inlining will not be possible, for example, when code contains taking the address of a such function:

___inline___ inline void func() { ... } // func will not be inlined
void* ptr = &func;
...
func();

#define ___noinline___

Attribute macro intended for no inlining functions.

Disables inlining for the function.

Example usage:

___noinline___ void func() { ... } // func will not be inlined