theKernel 10.0
Loading...
Searching...
No Matches
MkRuntimeC_Class_Define_C_API

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

+ Collaboration diagram for MkRuntimeC_Class_Define_C_API:

MkRuntimeC - type definition

typedef struct MkRuntimeS MkRuntimeCR
 instance-struct-reference same as struct MkRuntimeS, useable in a class-macro as: class##R
 
typedef const struct MkRuntimeS MkRuntimeCNR
 const instance-struct-reference same as const struct MkRuntimeS, useable in a class-macro as: class##R
 
#define MkRuntimeC_T   (&MK_RT_REF._MkRuntimeC_T)
 class as MkTypeDefS-class-type, useable in a class-macro as: class##_T
 
#define MkRuntimeC_TT   (MkTYP(MkRuntimeC_T))
 class as MkTypeS-class-type, useable in a class-macro as: class##_TT
 
#define MkRuntimeST   MkRuntimeC_T
 instance-type as MkTypeDefS-class-type …
 
#define MkRuntimeSTT   (MkTYP(MkRuntimeST))
 instance-type as MkTypeS-class-type (cast from MkRuntimeST into MkTypeS) …
 
#define MkRuntimeC_type   MK_RT
 same as MkRuntimeS but useable in a class-macro as: class##_type
 
#define MkRuntimeCT_X(instance)
 cast from an instance into the MkTypeDefS-class-type …
 
#define MkRuntimeCTT_X(instance)
 cast from an instance into the MkTypeS-class-type …
 
#define MkRuntimeCT_TT(typ)
 cast from an MkTypeS-class-type into an MkTypeDefS-class-type …
 
#define MkRuntimeC_NS   MK
 map class to namespace …
 
#define MkRuntimeCTT   MkRuntimeCTT
 class as MkTypeS-class-type for MkRuntimeC in the Target-Programming-Language (TPL)
 
#define MkRuntimeCT   ( (struct MkTypeDefS *) MkRuntimeCTT )
 class as MkTypeDefS-class-type for MkRuntimeC in the Target-Programming-Language (TPL)
 

MkRuntimeC - signature check

static bool MkRtCheck (MK_MNGN mng)
 check MkRuntimeS -> MkObjectS::signature
 
static bool MkRtCheckO (MK_OBJN obj)
 check MkRuntimeS -> MkObjectS::signature
 
#define MkRuntimeC_Check(mng)
 

MkRuntimeC - cast from a defined or a undefined instance

static MK_RT MkRt (MK_MNG mng)
 cast a unknown-object into an MkRuntimeS pointer or NULL if not possible
 
static MK_RTN MkRtN (MK_MNGN mng)
 (const) cast a unknown-object into an MkRuntimeS pointer or NULL if not possible
 
#define MkRtRaise(_rt)
 raise an error if class-instance is not valid
 

MkRuntimeC - MkRuntimeC_Class_Define_C_API - function

MK_RT MkRtP (MK_MNG mng)
 Non-inline replacement for MkRt
 
MK_BOOL MkRtCheckP (MK_MNGN mng)
 Non-inline replacement for MkRtCheck
 
MK_BOOL MkRtCheckOP (MK_OBJN obj)
 Non-inline replacement for MkRtCheckO
 
MK_RTN MkRtNP (MK_MNGN mng)
 Non-inline replacement for MkRtN
 

MkRuntimeC - signature define

#define MkRuntimeC_SIGNATURE   (MkObjectC_SIGNATURE ^ (10u<<10))
 
#define MkRuntimeC_MASK   (((1u<<22)-1)<<10)
 

MkRuntimeC - cast to superclass

#define MkRuntimeC_X2rt(x)
 
#define MkRuntimeC_X2obj(x)
 

Detailed Description

MkRuntimeC - low level definition, access and cast …

Macro Definition Documentation

◆ MkRtRaise

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

raise an error if class-instance is not valid

Definition at line 12294 of file LibMkKernel_mk.h.

12294 #define MkRtRaise(_rt) if (!_MkCheckX(MkRuntimeC,_rt)) { \
12295 MkErrorSetC_1E("'MkRuntimeC' hdl is NULL"); \
12296 goto error ; \
12297 }

◆ MkRuntimeC_Check

#define MkRuntimeC_Check ( mng)
Value:
static bool MkRtCheck(MK_MNGN mng)
check MkRuntimeS -> MkObjectS::signature …

Definition at line 12269 of file LibMkKernel_mk.h.

◆ MkRuntimeC_MASK

#define MkRuntimeC_MASK   (((1u<<22)-1)<<10)

Definition at line 12199 of file LibMkKernel_mk.h.

◆ MkRuntimeC_NS

#define MkRuntimeC_NS   MK

map class to namespace …

Definition at line 12237 of file LibMkKernel_mk.h.

◆ MkRuntimeC_SIGNATURE

#define MkRuntimeC_SIGNATURE   (MkObjectC_SIGNATURE ^ (10u<<10))

Definition at line 12198 of file LibMkKernel_mk.h.

◆ MkRuntimeC_T

#define MkRuntimeC_T   (&MK_RT_REF._MkRuntimeC_T)

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

Definition at line 12221 of file LibMkKernel_mk.h.

◆ MkRuntimeC_TT

#define MkRuntimeC_TT   (MkTYP(MkRuntimeC_T))

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

Definition at line 12223 of file LibMkKernel_mk.h.

◆ MkRuntimeC_type

#define MkRuntimeC_type   MK_RT

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

Definition at line 12229 of file LibMkKernel_mk.h.

◆ MkRuntimeC_X2obj

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

Definition at line 12208 of file LibMkKernel_mk.h.

◆ MkRuntimeC_X2rt

#define MkRuntimeC_X2rt ( x)
Value:
(x)

Definition at line 12207 of file LibMkKernel_mk.h.

◆ MkRuntimeCT

#define MkRuntimeCT   ( (struct MkTypeDefS *) MkRuntimeCTT )

class as MkTypeDefS-class-type for MkRuntimeC in the Target-Programming-Language (TPL)

Definition at line 12241 of file LibMkKernel_mk.h.

◆ MkRuntimeCT_TT

#define MkRuntimeCT_TT ( typ)
Value:
( (struct MkTypeDefS *) (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 MkTypeDefS-class-type …

Definition at line 12235 of file LibMkKernel_mk.h.

◆ MkRuntimeCT_X

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

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

Definition at line 12231 of file LibMkKernel_mk.h.

◆ MkRuntimeCTT

#define MkRuntimeCTT   MkRuntimeCTT

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

Definition at line 12239 of file LibMkKernel_mk.h.

◆ MkRuntimeCTT_X

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

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

Definition at line 12233 of file LibMkKernel_mk.h.

◆ MkRuntimeST

#define MkRuntimeST   MkRuntimeC_T

instance-type as MkTypeDefS-class-type …

Definition at line 12225 of file LibMkKernel_mk.h.

◆ MkRuntimeSTT

#define MkRuntimeSTT   (MkTYP(MkRuntimeST))

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

Definition at line 12227 of file LibMkKernel_mk.h.

Typedef Documentation

◆ MkRuntimeCNR

typedef const struct MkRuntimeS MkRuntimeCNR

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

Definition at line 12219 of file LibMkKernel_mk.h.

◆ MkRuntimeCR

typedef struct MkRuntimeS MkRuntimeCR

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

Definition at line 12217 of file LibMkKernel_mk.h.

Function Documentation

◆ MkRt()

static MK_RT MkRt ( MK_MNG mng)
static

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

Definition at line 12281 of file LibMkKernel_mk.h.

12281 {
12282 return (MkRtCheck(mng) ? (MK_RT)mng : NULL);
12283 }
The MkRuntimeS provide a per-thread environment for jvmkkernel …
+ Here is the caller graph for this function:

◆ MkRtCheck()

static bool MkRtCheck ( MK_MNGN mng)
static

check MkRuntimeS -> MkObjectS::signature

Returns
TRUE on valid rt and FALSE an invalid rt

Definition at line 12256 of file LibMkKernel_mk.h.

12256 {
12257 return MkSanitizeCheck(MkRuntimeC,mng);
12258 }
#define MkSanitizeCheck(_root, _m)
+ Here is the caller graph for this function:

◆ MkRtCheckO()

static bool MkRtCheckO ( MK_OBJN obj)
static

check MkRuntimeS -> MkObjectS::signature

Returns
TRUE on valid rt and FALSE an invalid rt

Definition at line 12264 of file LibMkKernel_mk.h.

12264 {
12265 return MkSanitizeCheckO(MkRuntimeC,obj);
12266 }
#define MkSanitizeCheckO(_root, _o)

◆ MkRtCheckOP()

MK_BOOL MkRtCheckOP ( MK_OBJN obj)

Non-inline replacement for MkRtCheckO

◆ MkRtCheckP()

MK_BOOL MkRtCheckP ( MK_MNGN mng)

Non-inline replacement for MkRtCheck

◆ MkRtN()

static MK_RTN MkRtN ( MK_MNGN mng)
static

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

Definition at line 12289 of file LibMkKernel_mk.h.

12289 {
12290 return (MkRtCheck(mng) ? (MK_RTN)mng : NULL);
12291 }

◆ MkRtNP()

MK_RTN MkRtNP ( MK_MNGN mng)

Non-inline replacement for MkRtN

◆ MkRtP()

MK_RT MkRtP ( MK_MNG mng)

Non-inline replacement for MkRt