PostgreSQL Source Code: src/include/utils/relptr.h File Reference (original) (raw)

Go to the source code of this file.
| Macros | |
|---|---|
| #define | relptr(type) union { type *relptr_type; Size relptr_off; } |
| #define | relptr_declare(type, relptrtype) typedef relptr(type) relptrtype |
| #define | relptr_access(base, rp) |
| #define | relptr_is_null(rp) ((rp).relptr_off == 0) |
| #define | relptr_offset(rp) ((rp).relptr_off - 1) |
| #define | relptr_store(base, rp, val) |
| #define | relptr_copy(rp1, rp2) ((rp1).relptr_off = (rp2).relptr_off) |
◆ relptr_access
Value:
(void *) ((rp).relptr_off == 0 ? NULL : (base) + (rp).relptr_off - 1))
#define StaticAssertVariableIsOfTypeMacro(varname, typename)
Definition at line 47 of file relptr.h.
49 : (base) + (rp).relptr_off - 1))
◆ relptr_copy
◆ relptr_declare
◆ relptr_is_null
◆ relptr_offset
◆ relptr_store
Value:
static Size relptr_store_eval(char *base, char *val)
Definition at line 77 of file relptr.h.
◆ relptr_store_eval()
Definition at line 60 of file relptr.h.
61{
63 return 0;
64 else
65 {
67 return val - base + 1;
68 }
69}
#define Assert(condition)