Template type wrapper for type metadata management. More...
#include <ttype.hpp>
Additional Inherited Members | |
Public Member Functions inherited from by::ttypeBase< T, tmetaTypeDef< T, tifHasMetaTypeDef< T >::is >::is > | |
| nbool | isTemplate () const override |
| nbool | isAbstract () const override |
| void * | make () const override |
| ncnt | size () const override |
| const type & | getSuper () const override |
| const nbool & | isInit () const override |
Public Member Functions inherited from by::type | |
| virtual nbool | operator== (const me &rhs) const |
| nbool | operator!= (const me &rhs) const |
| virtual const std::string & | getName () const |
| template<typename T > | |
| T * | makeAs () const |
| virtual nbool | init () |
| virtual nbool | rel () |
| const types & | getLeafs () const |
| returns all most derived class from this class. | |
| const types & | getSubs () const |
| const types & | getSupers () const |
| virtual nbool | isSuper (const type &it) const |
| nbool | isSuper (const type *it) const BY_SIDE_FUNC(isSuper) |
| template<typename T > | |
| nbool | isSuper () const |
| nbool | isSub (const type &it) const |
| nbool | isSub (const type *it) const BY_SIDE_FUNC(isSub) |
| template<typename T > | |
| nbool | isSub () const |
| const type & | getStatic () const BY_CONST_FUNC(_getStatic()) virtual const nchar *getMetaTypeName() const |
| Get meta type name for efficient type checking. More... | |
Static Public Member Functions inherited from by::ttypeBase< T, tmetaTypeDef< T, tifHasMetaTypeDef< T >::is >::is > | |
| static const me & | get () |
Protected Member Functions inherited from by::ttypeBase< T, tmetaTypeDef< T, tifHasMetaTypeDef< T >::is >::is > | |
| types & | _getSupers () override |
| types & | _getSubs () override |
| type & | _getStatic () const override |
| types ** | _onGetLeafs () const override |
| void | _onAddSubClass (const type &subClass) override |
| const std::string & | _getNativeName () const override |
Protected Member Functions inherited from by::type | |
| void | _setInit (nbool newState) |
| virtual void | _onAddSubClass (const me &subClass) |
| void | _setLeafs (types *newLeafs) const |
Template type wrapper for type metadata management.
ttype returns ttype<type> as its meta class. however, this makes impossible to get specific ttype instance at a binder.
if user typedefs SuperType at their type T, then ttype inherits from given SuperType. this eventually make user add API to want to ttype class.