qxLib
Classes | Macros
rtti.h File Reference

RTTI system based on polymorphism. More...

#include <qx/containers/string/string_hash.h>
#include <qx/meta/tuple_utils.h>
#include <qx/meta/type_strings.h>
#include <qx/rtti/class_identificator.h>
#include <qx/rtti/rtti_naming_strategy.h>
#include <array>
#include <span>

Go to the source code of this file.

Classes

class  qx::rtti_pure_base
 
class  qx::rtti_root< naming_strategy_t >
 RTTI root class. More...
 

Macros

#define QX_RTTI_CLASS(thisClass, ...)
 Macro for every class inherited from class with QX_RTTI_BASE_CLASS macro. More...
 

Detailed Description

RTTI system based on polymorphism.

Using qx::rtti_root and QX_RTTI_CLASS will let you to use RTTI advantages without enabling RTTI in compiler's flags common logic is taken from https://github.com/qualab/xakep-RTTI (Vladimir Kerimov, qualab)

Author
Khrapov
Date
24.08.2020

Definition in file rtti.h.

Macro Definition Documentation

◆ QX_RTTI_CLASS

#define QX_RTTI_CLASS (   thisClass,
  ... 
)

Macro for every class inherited from class with QX_RTTI_BASE_CLASS macro.

Parameters
thisClass- this class name
...- super class name (must implement QX_RTTI_CLASS or QX_RTTI_BASE_CLASS macro)

Definition at line 129 of file rtti.h.