script type for function objects in byeol language. 더 자세히 ...
#include <funcType.hpp>
Public 멤버 함수 | |
| nbool | operator== (const type &rhs) const override |
by::mgdType(으)로부터 상속된 Public 멤버 함수 | |
| nbool | isTemplate () const override |
| nbool | isAbstract () const override |
| const type & | getSuper () const override |
| const nbool & | isInit () const override |
| const std::string & | getName () const override |
| ncnt | size () const override |
| void | onCloneDeep (const clonable &from) override |
| Performs a deep clone operation for this script type instance. | |
| params & | getParams () override |
| const node * | getRet () const override |
| void | setRet (const node &new1) override |
| void * | make () const override |
| create an instance to be refered this type. | |
by::ntype(으)로부터 상속된 Public 멤버 함수 | |
| nbool | operator== (const type &rhs) const override |
| check whether two ntype are same in both of native and byeol runtime environments | |
| template<typename T > | |
| nbool | isImpli () const |
| whether variable 'it' can be a subtype of T in runtime | |
| virtual nbool | isImpli (const type &to) const |
| nbool | isImpli (const type *it) const BY_SIDE_FUNC(isImpli) |
| nbool | isImpli (const typeProvidable &to) const |
| nbool | isImpli (const typeProvidable *it) const BY_SIDE_FUNC(isImpli) |
| template<typename T > | |
| tstr< T > | asImpli (const node &it) const |
| template<typename T > | |
| tstr< T > | asImpli (const node *it) const BY_SIDE_FUNC(asImpli< T >) |
| virtual str | asImpli (const node &from, const type &to) const |
| str | asImpli (const node &from, const type *to) const BY_SIDE_FUNC(to |
| str | asImpli (from, *to) |
| str | str ()) |
| str | asImpli (const node *from, const type &to) const BY_SIDE_FUNC(from |
| str asImpli | str ()) |
| str | asImpli (const node *from, const type *to) const BY_SIDE_FUNC(from &&to |
| str asImpli | str ()) |
| virtual nbool | isCustom () const |
| template<typename T > | |
| nbool | is () const |
| nbool | is (const type &to) const |
| nbool | is (const type *it) const BY_SIDE_FUNC(is) |
| template<typename T > | |
| tstr< T > | as (const node &it) const |
| template<typename T > | |
| tstr< T > | as (const node *it) const BY_SIDE_FUNC(as< T >) |
| str | as (const node &from, const type &to) const |
| str | as (const node &from, const type *to) const BY_SIDE_FUNC(to |
| str | as (from, *to) |
| str | str ()) |
| str | as (const node *from, const type &to) const BY_SIDE_FUNC(from |
| str as | str ()) |
| virtual str | as (const node *from, const type *to) const BY_SIDE_FUNC(from &&to |
| virtual str as | str ()) |
| virtual nbool | isImmutable () const |
| Checks if this type is immutable. | |
| nbool | isSameSign (const type &rhs) const |
| const ntype * | promote (const ntype &r) const |
| const ntype * | promote (const ntype *it) const BY_SIDE_FUNC(promote) |
| const ntype * | promote (const typeProvidable &r) const |
| const ntype * | promote (const typeProvidable *it) const BY_SIDE_FUNC(promote) |
| template<typename T > | |
| const ntype * | promote () const |
| static const ntype | promote (l, *r) |
| const params & | getParams () const BY_CONST_FUNC(getParams()) virtual params &getParams() |
| Retrieves a non-const reference to the parameters associated with this type. | |
| void | setRet (const node *it) BY_SIDE_FUNC(setRet) |
| std::string | createNameWithParams () const |
| const nchar * | getMetaTypeName () const override |
by::type(으)로부터 상속된 Public 멤버 함수 | |
| virtual nbool | operator== (const me &rhs) const |
| Checks if two type objects represent the same type. | |
| nbool | operator!= (const me &rhs) const |
| template<typename T > | |
| T * | makeAs () const |
| virtual nbool | init () |
| Initializes type metadata and constructs class hierarchy | |
| virtual nbool | rel () |
| const types & | getLeafs () const |
| Returns all most derived classes (leaf nodes) from this class | |
| const types & | getSubs () const |
| const types & | getSupers () const |
| virtual nbool | isSuper (const type &it) const |
| Checks if this type is a super class of the given type | |
| nbool | isSuper (const type *it) const BY_SIDE_FUNC(isSuper) |
| template<typename T > | |
| nbool | isSuper () const |
| nbool | isSub (const type &it) const |
| Checks if this type is a sub class of the given type | |
| 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 | |
by::clonable(으)로부터 상속된 Public 멤버 함수 | |
| virtual me * | clone () const =0 |
| virtual me * | cloneDeep () const |
| virtual void | onCloneDeep (const me &from) |
Protected 멤버 함수 | |
| const impliAses & | _getImpliAses () const override |
| const ases & | _getAses () const override |
by::mgdType(으)로부터 상속된 Protected 멤버 함수 | |
| types & | _getSupers () override |
| types & | _getSubs () override |
| type & | _getStatic () const override |
| types ** | _onGetLeafs () const override |
by::type(으)로부터 상속된 Protected 멤버 함수 | |
| void | _setInit (nbool newState) |
| virtual void | _onAddSubClass (const me &subClass) |
| Hook method called when a new subclass is registered with this type. | |
| void | _setLeafs (types *newLeafs) const |
| virtual const std::string & | _getNativeName () const |
추가로 상속된 멤버들 | |
by::ntype(으)로부터 상속된 정적 Public 멤버 함수 | |
| static const ntype * | promote (const ntype &l, const ntype &r) |
| static const ntype * | promote (const ntype &l, const ntype *r) BY_SIDE_FUNC(r |
| static const ntype * | promote (const ntype *l, const ntype &r) BY_SIDE_FUNC(l |
| static const ntype * | promote (const ntype *l, const ntype *r) BY_SIDE_FUNC(l &&r |
by::ntype(으)로부터 상속된 Public 속성 | |
| str asImpli | from |
| str as | from |
| virtual str as | from |
| static const ntype | nullptr |
| static const ntype promote | l |
| static const ntype promote | nullptr |
by::ntype(으)로부터 상속된 정적 Public 속성 | |
| static const std::string | META_TYPENAME = "ntype" |
script type for function objects in byeol language.
Specialized type information for function objects with implicit conversion support.
by::ntype(으)로부터 재구현되었습니다.
operator==() only compares parameter and return type equality, but not the name. because it's for 1st citizen feature of function type in byeol runtime code.