2
3
4
5
6
8#ifndef GIMBAL_PRIMITIVES_H
9#define GIMBAL_PRIMITIVES_H
11#include "../types/gimbal_type.h"
12#include "../ifaces/gimbal_ivariant.h"
13#include "../../preprocessor/gimbal_compiler.h"
29#define GBL_BITMASK_TYPE (GBL_TYPEID(GblBitMask))
34# define GBL_SIZE_TYPE GBL_UINT32_TYPE
53
54
55
56
57
60typedef uint64_t GblBitmask;
67 size_t classPrivateSize,
68 const GblIVariantVTable* pIVTable,
75 size_t classPrivateSize,
76 const GblIVariantVTable* pIVTable,
#define GBL_BUILTIN_TYPE(prefix)
Returns a type from the macro prefix of a builtin type.
#define GBL_TYPEID(instanceStruct)
#define GBL_CLASS_BASE_EMPTY(...)
#define GBL_NIL_TYPE
Builtin ID for nil GblVariant type.
#define GBL_UINT64_TYPE
Builtin ID for uint64_t GblVariant type.
#define GBL_CHAR_TYPE
Builtin ID for char GblVariant type.
#define GBL_UINT16_TYPE
Builtin ID for uint16_t GblVariant type.
#define GBL_FLOAT_TYPE
Builtin ID for float GblVariant type.
#define GBL_INT16_TYPE
Builtin ID for int16_t GblVariant type.
#define GBL_STRING_TYPE
Builtin ID for string GblVariant type.
#define GBL_BOOL_TYPE
Builtin ID for boolean GblVariant type.
#define GBL_INT64_TYPE
Builtin ID for int64_t GblVariant type.
#define GBL_DOUBLE_TYPE
Builtin ID for double GblVariant type.
#define GBL_INT32_TYPE
Builtin ID for int32_t GblVariant type.
#define GBL_UINT8_TYPE
Builtin ID for uint8_t GblVariant type.
#define GBL_UINT32_TYPE
Builtin ID for uint32_t GblVariant type.
uint32_t GblFlags
Standard-sized flags type, 32-bits across platforms.