#include "p99_enum.h"
#include "p99_generic.h"
#include "p99_atomic.h"
Go to the source code of this file.
|
#define | P99_REF_ACCOUNT(REF) |
|
#define | P99_REF_DISCOUNT(REF, DELETE) |
|
#define | P99_TP(T) P99_PASTE2(p00_tp_, T) |
|
#define | P99_TP_DECLARE(T) |
|
#define | P99_TP_GET(TP) |
|
#define | p99_tp_init(EL, VAL) |
|
#define | P99_TP_INITIALIZER(VAL) { .p00_tp = P00_TP_INITIALIZER(VAL), } |
|
#define | P99_TP_REF_ACCOUNT(TP, REF) |
|
#define | P99_TP_REF_DECLARE(T) |
|
#define | P99_TP_REF_DEFINE(T) |
|
#define | P99_TP_REF_DESTROY(TP, DELETE) (void)P99_REF_DISCOUNT(P99_TP_XCHG((TP), 0), (DELETE)) |
|
#define | P99_TP_REF_FUNCTIONS(T) |
|
#define | P99_TP_REF_INIT(...) |
|
#define | P99_TP_REF_INITIALIZER(VAL, ACCOUNT) P99_TP_INITIALIZER(P99_GENERIC_NULLPTR_CONSTANT(VAL, (void*)0, ACCOUNT(VAL))) |
|
#define | P99_TP_REF_MV(TP, SP, DELETE) P99_REF_DISCOUNT(P99_TP_XCHG((TP), P99_TP_XCHG((SP), 0)), (DELETE)) |
|
#define | P99_TP_REF_REPLACE(TP, SP, DELETE) P99_REF_DISCOUNT(P99_TP_XCHG((TP), P99_REF_ACCOUNT(SP)), (DELETE)) |
|
#define | P99_TP_STATE(T) P99_PASTE2(p00_tp_glue_, T) |
|
#define | P99_TP_STATE_CHECK(TPS) |
|
#define | P99_TP_STATE_COMMIT(TPS) |
|
#define | P99_TP_STATE_GET(TPS) |
|
#define | P99_TP_STATE_INITIALIZER(TP, P) |
|
#define | P99_TP_STATE_SET(TPS, P) |
|
#define | P99_TP_STATE_TYPE(TPS) __typeof__(*(TPS)->p00_dum) |
|
#define | P99_TP_TYPE(TP) __typeof__(*(TP)->p00_dum) |
|
#define | P99_TP_TYPE_STATE(TP) __typeof__(*(TP)->p00_mud) |
|
#define | P99_TP_XCHG(TP, VAL) |
|
#define P99_PASTE2(_1, _2)
Paste two token sequences at their junction.