로딩중...
검색중...
일치하는것 없음
macro.hpp
이 파일의 문서화 페이지로 가기
1
2#pragma once
3
4#include "meta/common/dep.hpp"
5
10// byeolMeta macro's sub-commands:
11// CLONE:
12// defines normal clone func. it have to be defined if you
13// just have declared non abstract class.
14#define __BY__DECL_CLONE(ME) \
15public: \
16 clonable* clone() const override { return new ME(*this); } \
17 \
18private:
19
24// TYPE:
25// defines super meta type.
26// for instance, if you set TYPE(type), then when you call getType() of your class,
27// it will returns instance of type of type.
28#define __BY__DECL_TYPE(METATYPE) \
29public: \
30 typedef METATYPE metaType; \
31 const ntype& getType() const override { return ttype<me>::get(); } \
32 \
33private: