|
libGimbal 0.1.0
C17-Based Extended Standard Library and Cross-Language Runtime Framework
|
Go to the source code of this file.
Data Structures | |
| struct | GblClosureClass |
| struct | GblClosure |
Macros | |
| #define | GblClosure_create(...) |
| #define | GblClosure_createDefault_(...) |
| #define | GblClosure_createDefault__(type, size, ud, dtor, ...) |
Type System | |
Type UUID and cast operators | |
| #define | GBL_CLOSURE_TYPE |
| #define | GBL_CLOSURE(self) |
| #define | GBL_CLOSURE_CLASS(klass) |
| #define | GBL_CLOSURE_GET_CLASS(self) |
Functions | |
| GblType | GblClosure_type (void) |
| GblClosure * | GblClosure_create (GblType derivedType, size_t size, void *pUserdata, GblArrayMapDtorFn pFnDtor) |
| GblClosure * | GblClosure_ref (GblClosure *pSelf) |
| GblRefCount | GblClosure_unref (GblClosure *pSelf) |
Current Closure | |
Methods for querying the active GblClosure | |
| GblClosure * | GblClosure_current (void) |
| void * | GblClosure_currentUserdata (void) |
GblClosure, generic callable instance, and API.
This file contains the type declaration of GblClosure and its associated API. A GblClosure repersents the base type for all callable objects, providing:
Definition in file gimbal_closure.h.
| #define GBL_CLOSURE_TYPE |
Type UUID for GblClosure.
Definition at line 24 of file gimbal_closure.h.
| #define GBL_CLOSURE | ( | self | ) |
Casts a GblInstance to GblClosure.
Definition at line 25 of file gimbal_closure.h.
| #define GBL_CLOSURE_CLASS | ( | klass | ) |
Casts a GblClass to GblClosureClass.
Definition at line 26 of file gimbal_closure.h.
| #define GBL_CLOSURE_GET_CLASS | ( | self | ) |
Gets a GblClosureClass from GblInstance.
Definition at line 27 of file gimbal_closure.h.
| #define GblClosure_create | ( | ... | ) |
Definition at line 140 of file gimbal_closure.h.
| #define GblClosure_createDefault_ | ( | ... | ) |
Definition at line 142 of file gimbal_closure.h.
| #define GblClosure_createDefault__ | ( | type, | |
| size, | |||
| ud, | |||
| dtor, | |||
| ... ) |
Definition at line 144 of file gimbal_closure.h.
| GblType GblClosure_type | ( | void | ) |
Returns the GblType UUID for GblClosure.
| GblClosure * GblClosure_current | ( | void | ) |
Returns a pointer to the inner-most currently executing GblClosure instance.
| void * GblClosure_currentUserdata | ( | void | ) |
Returns a pointer to the userdatea of the inner-most currently executing GblClosure instance.
| GblClosure * GblClosure_create | ( | GblType | derivedType, |
| size_t | size, | ||
| void * | pUserdata, | ||
| GblArrayMapDtorFn | pFnDtor ) |
Creates a GblClosure-derived instance with the given attributes, returning a pointer to it.
| GblClosure * GblClosure_ref | ( | GblClosure * | pSelf | ) |
Returns a new reference to the given GblClosure instance, increasing its reference count.
| GblRefCount GblClosure_unref | ( | GblClosure * | pSelf | ) |
Removes a reference to the given GblClosure, destroying it upon reaching zero.