theKernel 10.0 NHI1 - theKernel - theLink - theConfig - theSq3Lite - theCompiler - theBrain - theGuard
c - tcl - py - rb - jv - cc
Loading...
Searching...
No Matches
MkRtExtC_Class_Define_C_API

MkRtExtS - low level definition, access and cast … More...

+ Collaboration diagram for MkRtExtC_Class_Define_C_API:

MkRtExtC - type definition

typedef struct MkRtExtS MkRtExtCR
 instance-struct-reference same as struct MkRtExtS, useable in a class-macro as: class##R
 
typedef const struct MkRtExtS MkRtExtCNR
 const instance-struct-reference same as const struct MkRtExtS, useable in a class-macro as: class##R
 
#define MkRtExtC_T   (&MK_RT_REF._MkRtExtC_T)
 class as MkSuperTypeS-class-type, useable in a class-macro as: class##_T
 
#define MkRtExtC_TT   (MkTYP(MkRtExtC_T))
 class as MkTypeS-class-type, useable in a class-macro as: class##_TT
 
#define MkRtExtST   MkRtExtC_T
 instance-type as MkSuperTypeS-class-type …
 
#define MkRtExtSTT   (MkTYP(MkRtExtST))
 instance-type as MkTypeS-class-type (cast from MkRtExtST into MkTypeS) …
 
#define MkRtExtC_type   MK_RTEXT
 same as MkRtExtS but useable in a class-macro as: class##_type
 
#define MkRtExtCT_X(instance)
 cast from an instance into the MkSuperTypeS-class-type …
 
#define MkRtExtCTT_X(instance)
 cast from an instance into the MkTypeS-class-type …
 
#define MkRtExtCT_TT(typ)
 cast from an MkTypeS-class-type into an MkSuperTypeS-class-type …
 
#define MkRtExtC_NS   MK
 map class to namespace …
 
#define MkRtExtCTT   MkRtExtCTT
 class as MkTypeS-class-type for MkRtExtC in the Target-Programming-Language (TPL)
 
#define MkRtExtCT   ( (struct MkSuperTypeS *) MkRtExtCTT )
 class as MkSuperTypeS-class-type for MkRtExtC in the Target-Programming-Language (TPL)
 

MkRtExtC - signature check

bool MkRtExtCheck (MK_MNGN mng)
 check MkRtExtS -> MkObjectS::signature
 
bool MkRtExtCheckO (MK_OBJN obj)
 check MkRtExtS -> MkObjectS::signature
 
#define MkRtExtC_Check(mng)
 

MkRtExtC - cast from a defined or a undefined instance

MK_RTEXT MkRtExt (MK_MNG mng)
 cast a unknown-object into an MkRtExtS pointer or NULL if not possible
 
MK_RTEXTN MkRtExtN (MK_MNGN mng)
 (const) cast a unknown-object into an MkRtExtS pointer or NULL if not possible
 
#define MkRtExtRaise(_rtext)
 raise an error if class-instance is not valid
 
#define MkRTEXT_R(x)
 cast a known-object into an MkRtExtS reference
 
#define MkRTEXT(x)
 cast a known-object into an MkRtExtS pointer
 

MkRtExtC - signature define

#define MkRtExtC_SIGNATURE   (MkExtensionC_SIGNATURE ^ (2u<<6))
 
#define MkRtExtC_MASK   (((1u<<26)-1)<<6)
 

MkRtExtC - cast to superclass

#define MkRtExtC_X2rtext(x)
 
#define MkRtExtC_X2ext(x)
 
#define MkRtExtC_X2obj(x)
 

Detailed Description

MkRtExtS - low level definition, access and cast …

Macro Definition Documentation

◆ MkRTEXT

#define MkRTEXT ( x)
Value:
(&MkRTEXT_R(x))
#define MkRTEXT_R(x)
cast a known-object into an MkRtExtS reference

cast a known-object into an MkRtExtS pointer

Definition at line 11202 of file LibMkKernel_mk.h.

◆ MkRTEXT_R

#define MkRTEXT_R ( x)
Value:
(*(x)).super.rtext

cast a known-object into an MkRtExtS reference

Definition at line 11200 of file LibMkKernel_mk.h.

◆ MkRtExtC_Check

#define MkRtExtC_Check ( mng)
Value:
bool MkRtExtCheck(MK_MNGN mng)
check MkRtExtS -> MkObjectS::signature …

Definition at line 11168 of file LibMkKernel_mk.h.

◆ MkRtExtC_MASK

#define MkRtExtC_MASK   (((1u<<26)-1)<<6)

Definition at line 11095 of file LibMkKernel_mk.h.

◆ MkRtExtC_NS

#define MkRtExtC_NS   MK

map class to namespace …

Definition at line 11135 of file LibMkKernel_mk.h.

◆ MkRtExtC_SIGNATURE

#define MkRtExtC_SIGNATURE   (MkExtensionC_SIGNATURE ^ (2u<<6))

Definition at line 11094 of file LibMkKernel_mk.h.

◆ MkRtExtC_T

#define MkRtExtC_T   (&MK_RT_REF._MkRtExtC_T)

class as MkSuperTypeS-class-type, useable in a class-macro as: class##_T

Definition at line 11119 of file LibMkKernel_mk.h.

◆ MkRtExtC_TT

#define MkRtExtC_TT   (MkTYP(MkRtExtC_T))

class as MkTypeS-class-type, useable in a class-macro as: class##_TT

Definition at line 11121 of file LibMkKernel_mk.h.

◆ MkRtExtC_type

#define MkRtExtC_type   MK_RTEXT

same as MkRtExtS but useable in a class-macro as: class##_type

Definition at line 11127 of file LibMkKernel_mk.h.

◆ MkRtExtC_X2ext

#define MkRtExtC_X2ext ( x)
Value:
#define MkEXT(x)
cast a known-object into an MkExtensionS pointer

Definition at line 11104 of file LibMkKernel_mk.h.

◆ MkRtExtC_X2obj

#define MkRtExtC_X2obj ( x)
Value:
#define MkOBJ(x)
cast a known-object into an MkObjectS pointer

Definition at line 11105 of file LibMkKernel_mk.h.

◆ MkRtExtC_X2rtext

#define MkRtExtC_X2rtext ( x)
Value:
(x)

Definition at line 11103 of file LibMkKernel_mk.h.

◆ MkRtExtCT

#define MkRtExtCT   ( (struct MkSuperTypeS *) MkRtExtCTT )

class as MkSuperTypeS-class-type for MkRtExtC in the Target-Programming-Language (TPL)

Definition at line 11139 of file LibMkKernel_mk.h.

◆ MkRtExtCT_TT

#define MkRtExtCT_TT ( typ)
Value:
( (struct MkSuperTypeS *) (typ) )
super-class-base, the MkTypeS using the super-macro-syntax for all non specific types …
struct MkTypeS typ

cast from an MkTypeS-class-type into an MkSuperTypeS-class-type …

Definition at line 11133 of file LibMkKernel_mk.h.

◆ MkRtExtCT_X

#define MkRtExtCT_X ( instance)
Value:
( (struct MkSuperTypeS *) (MkOBJ_R(instance).type) )
#define MkOBJ_R(x)
cast a known-object into an MkObjectS reference

cast from an instance into the MkSuperTypeS-class-type …

Definition at line 11129 of file LibMkKernel_mk.h.

◆ MkRtExtCTT

#define MkRtExtCTT   MkRtExtCTT

class as MkTypeS-class-type for MkRtExtC in the Target-Programming-Language (TPL)

Definition at line 11137 of file LibMkKernel_mk.h.

◆ MkRtExtCTT_X

#define MkRtExtCTT_X ( instance)
Value:
(MkOBJ_R(instance).type)

cast from an instance into the MkTypeS-class-type …

Definition at line 11131 of file LibMkKernel_mk.h.

◆ MkRtExtRaise

#define MkRtExtRaise ( _rtext)
Value:
if (!_MkCheckX(MkRtExtC,_rtext)) { \
MkErrorSetC_1E("'MkRtExtC' hdl is NULL"); \
goto error ; \
}
#define _MkCheckX(cls, x)

raise an error if class-instance is not valid

Definition at line 11194 of file LibMkKernel_mk.h.

11194 #define MkRtExtRaise(_rtext) if (!_MkCheckX(MkRtExtC,_rtext)) { \
11195 MkErrorSetC_1E("'MkRtExtC' hdl is NULL"); \
11196 goto error ; \
11197 }

◆ MkRtExtST

#define MkRtExtST   MkRtExtC_T

instance-type as MkSuperTypeS-class-type …

Definition at line 11123 of file LibMkKernel_mk.h.

◆ MkRtExtSTT

#define MkRtExtSTT   (MkTYP(MkRtExtST))

instance-type as MkTypeS-class-type (cast from MkRtExtST into MkTypeS) …

Definition at line 11125 of file LibMkKernel_mk.h.

Typedef Documentation

◆ MkRtExtCNR

typedef const struct MkRtExtS MkRtExtCNR

const instance-struct-reference same as const struct MkRtExtS, useable in a class-macro as: class##R

Definition at line 11117 of file LibMkKernel_mk.h.

◆ MkRtExtCR

typedef struct MkRtExtS MkRtExtCR

instance-struct-reference same as struct MkRtExtS, useable in a class-macro as: class##R

Definition at line 11115 of file LibMkKernel_mk.h.

Function Documentation

◆ MkRtExt()

MK_RTEXT MkRtExt ( MK_MNG mng)
inline

cast a unknown-object into an MkRtExtS pointer or NULL if not possible

Definition at line 11181 of file LibMkKernel_mk.h.

11181 {
11182 return (MkRtExtCheck(mng) ? (MK_RTEXT)mng : NULL);
11183 }
MkRtExtS - extend the MkRuntimeC with a library specific feature …

◆ MkRtExtCheck()

bool MkRtExtCheck ( MK_MNGN mng)
inline

check MkRtExtS -> MkObjectS::signature

Returns
TRUE on valid rtext and FALSE an invalid rtext

Definition at line 11155 of file LibMkKernel_mk.h.

11155 {
11156 return MkSanitizeCheck(MkRtExtC,mng);
11157 }
#define MkSanitizeCheck(_root, _m)
+ Here is the caller graph for this function:

◆ MkRtExtCheckO()

bool MkRtExtCheckO ( MK_OBJN obj)
inline

check MkRtExtS -> MkObjectS::signature

Returns
TRUE on valid rtext and FALSE an invalid rtext

Definition at line 11163 of file LibMkKernel_mk.h.

11163 {
11164 return MkSanitizeCheckO(MkRtExtC,obj);
11165 }
#define MkSanitizeCheckO(_root, _o)

◆ MkRtExtN()

MK_RTEXTN MkRtExtN ( MK_MNGN mng)
inline

(const) cast a unknown-object into an MkRtExtS pointer or NULL if not possible

Definition at line 11189 of file LibMkKernel_mk.h.

11189 {
11190 return (MkRtExtCheck(mng) ? (MK_RTEXTN)mng : NULL);
11191 }