|
#define | P99_CONSTANT(T, NAME, INIT) register T const NAME = INIT |
| define a compile time constant NAME of type T with value INIT More...
|
|
#define | P99_DECLARE_ENUM(T, ...) |
| Declare a simple enumeration type. More...
|
|
#define | P99_DECLARE_ENUM_GETNAME(T, ...) |
| Declare a simple inline function to return strings containing the names of enumeration constants. More...
|
|
#define | P99_DECLARE_ENUM_PARSE(T, ...) |
| Declare a simple inline function to return the longest enumeration constants of type T found in a string. More...
|
|
#define | P99_DECLARE_STRUCT(NAME) typedef struct NAME NAME |
| forward declaration of a struct NAME More...
|
|
#define | P99_DECLARE_UNION(NAME) typedef union NAME NAME |
| forward declaration of a union NAME More...
|
|
#define | P99_DEFINE_ENUM(T) |
| Define the necessary symbols for a simple enumeration type. More...
|
|
#define | P99_DEFINE_STRUCT(NAME, ...) |
| Declare a structure of name NAME composed of the field declarations that are given in the remaining arguments. More...
|
|
#define | P99_DEFINE_UNION(NAME, ...) |
| definition of a union NAME More...
|
|
#define | P99_DERIVED_TYPES(T) |
| Declare trivial init and destroy functions for type T and its pointer derivatives. More...
|
|
#define | P99_ENC(OBJ) ((OBJ).p00_val) |
| Access an encapsulated object. More...
|
|
#define | P99_ENC_DECLARE(T, NAME) |
| Encapsulate an object of type T in a new type called NAME. More...
|
|
#define | P99_ENC_INIT(V) { .p00_val = (V), } |
| Initialize an encapsulated object. More...
|
|
#define | P99_ENCP(OBJP) ((OBJP)->p00_val) |
| Access an encapsulated object through a pointer. More...
|
|
#define | P99_EXT_ARITHMETIC_TYPES P99_STD_ARITHMETIC_TYPES |
|
#define | P99_EXT_INTEGER_TYPES |
|
#define | P99_EXT_REAL_TYPES P99_STD_REAL_TYPES |
|
#define | P99_LITERAL(...) P99_SEQ(P00_LITERAL, __VA_ARGS__) |
| Copy local variables back to the fields of same name inside a literal. More...
|
|
#define | P99_PLAIN_TYPE(T) |
| Declare trivial init and destroy functions for type T. More...
|
|
#define | P99_POINTER_TYPE(T) |
| Declare derived pointer types with endings "_ptr" and "_cptr". More...
|
|
#define | P99_STD_ARITHMETIC_EXTS |
|
#define | P99_STD_ARITHMETIC_TYPES |
|
#define | P99_STD_BASIC_EXTS |
|
#define | P99_STD_BASIC_TYPES |
|
#define | P99_STD_CHARACTER_EXTS c, hh, uhh |
|
#define | P99_STD_CHARACTER_TYPES |
|
#define | P99_STD_COMPLEX_EXTS fc, dc, ldc |
|
#define | P99_STD_COMPLEX_TYPES |
|
#define | P99_STD_FLOATING_EXTS P99_STD_REAL_FLOATING_EXTS, P99_STD_COMPLEX_EXTS |
|
#define | P99_STD_FLOATING_TYPES P99_STD_REAL_FLOATING_TYPES, P99_STD_COMPLEX_TYPES |
|
#define | P99_STD_INTEGER_EXTS |
|
#define | P99_STD_INTEGER_TYPES |
|
#define | P99_STD_REAL_EXTS |
|
#define | P99_STD_REAL_FLOATING_EXTS f, d, ld |
|
#define | P99_STD_REAL_FLOATING_TYPES |
|
#define | P99_STD_REAL_TYPES |
|
#define | P99_STD_SIGNED_EXTS hh, h, i, l, ll |
|
#define | P99_STD_SIGNED_TYPES |
|
#define | P99_STD_UNSIGNED_EXTS b, c, uhh, uh, u, ul, ull |
|
#define | P99_STD_UNSIGNED_TYPES |
|
#define | P99_STRUCT_LITERAL(TYPE, ...) (TYPE){ P99_SEQ(P00_LITERAL, __VA_ARGS__) } |
| Copy local variables back to the fields of same name inside a compound literal of type TYPE. More...
|
|
#define | P99_STRUCT_TYPE0(TYPE, ...) P99_FOR(TYPE, P99_NARG(__VA_ARGS__), P00_SEQ, P00_STRUCT_TYPE0, __VA_ARGS__) |
| Transform the argument list into a list of lvalue for the fields of type TYPE. More...
|
|
#define | P99_STRUCT_TYPES(TYPE, ...) P99_FOR(TYPE, P99_NARG(__VA_ARGS__), P00_SEQ, P00_STRUCT_TYPES, __VA_ARGS__) |
| Transform the argument list into a list of field types for type TYPE. More...
|
|
#define | P99_STRUCT_UNUSE(TYPE, VAR, ...) P99_FOR((TYPE, VAR), P99_NARG(__VA_ARGS__), P00_SEP, P00_STRUCT_UNUSE, __VA_ARGS__) |
| Copy local variables back to the fields of variable VAR. More...
|
|
#define | P99_STRUCT_USE(TYPE, VAR, ...) P99_FOR((TYPE, VAR), P99_NARG(__VA_ARGS__), P00_SEP, P00_STRUCT_USE, __VA_ARGS__) |
| Use the fields of variable VAR of type TYPE. More...
|
|
#define | P99_UNUSED(...) P99_SEP(P00_UNUSED, __VA_ARGS__) |
| check if the list of expressions is syntactically valid but don't evaluate it More...
|
|