Crate pgx_pg_sys
source ·Re-exports
pub use submodules::*;
Modules
Macros
Log to Postgres’
fatal
log level. This will abort the current Postgres backend connection process.Log to Postgres’
panic
log level. This will cause the entire Postgres cluster to crash.If an interrupt is pending (perhaps a user-initiated “cancel query” message to this backend),
this will safely abort the current transaction
Log to Postgres’
debug1
log level.Log to Postgres’
debug2
log level.Log to Postgres’
debug3
log level.Log to Postgres’
debug4
log level.Log to Postgres’
debug5
log level.Sends some kind of message to Postgres, and if it’s a PgLogLevel::ERROR or greater, Postgres’
error handling takes over and, in the case of PgLogLevel::ERROR, aborts the current transaction.
Log to Postgres’
error
log level. This will abort the current Postgres transaction.This macro returns the name of the enclosing function.
As the internal implementation is based on the
std::any::type_name
, this macro derives
all the limitations of this function.Log to Postgres’
info
log level.Log to Postgres’
log
log level.Log to Postgres’
notice
log level.Log to Postgres’
warning
log level.Structs
Optimizable Statements
Query Tree
Raw Grammar Output Statements
Supporting data structures for Parse Trees
Enums
Constants
this comes from
postgres_ext.h
Statics
System interrupt and critical section handling
globals.h – *
Traits
A trait for converting a thing into a
char *
that is allocated by Postgres’ pallocA trait applied to all Postgres
pg_sys::Node
types and subtypesFunctions
#define BufferGetBlock(buffer)
(
AssertMacro(BufferIsValid(buffer)),
BufferIsLocal(buffer) ?
LocalBufferBlockPointers[-(buffer) - 1]
:
(Block) (BufferBlocks + ((Size) ((buffer) - 1)) * BLCKSZ)
)
(
AssertMacro(BufferIsValid(buffer)),
BufferIsLocal(buffer) ?
LocalBufferBlockPointers[-(buffer) - 1]
:
(Block) (BufferBlocks + ((Size) ((buffer) - 1)) * BLCKSZ)
)
#define BufferGetPage(buffer) ((Page)BufferGetBlock(buffer))
#define BufferIsLocal(buffer) ((buffer) < 0)
#define HeapTupleHeaderIsHeapOnly(tup)
(
((tup)->t_infomask2 & HEAP_ONLY_TUPLE) != 0
)
(
((tup)->t_infomask2 & HEAP_ONLY_TUPLE) != 0
)
#define HeapTupleHeaderIsHotUpdated(tup)
(
((tup)->t_infomask2 & HEAP_HOT_UPDATED) != 0 &&
((tup)->t_infomask & HEAP_XMAX_INVALID) == 0 &&
!HeapTupleHeaderXminInvalid(tup)
)
(
((tup)->t_infomask2 & HEAP_HOT_UPDATED) != 0 &&
((tup)->t_infomask & HEAP_XMAX_INVALID) == 0 &&
!HeapTupleHeaderXminInvalid(tup)
)
#define HeapTupleHeaderXminInvalid(tup)
(
((tup)->t_infomask & (HEAP_XMIN_COMMITTED|HEAP_XMIN_INVALID)) ==
HEAP_XMIN_INVALID
)
(
((tup)->t_infomask & (HEAP_XMIN_COMMITTED|HEAP_XMIN_INVALID)) ==
HEAP_XMIN_INVALID
)
Safety
__j0⚠
__j1⚠
__jn⚠
__y0⚠
__y1⚠
__yn⚠
a64l⚠
abs⚠
acos⚠
asin⚠
atan⚠
atof⚠
atoi⚠
atol⚠
bcmp⚠
bind⚠
bit⚠
cbrt⚠
ceil⚠
chr⚠
cos⚠
cosf⚠
cosh⚠
cosl⚠
dcos⚠
dcot⚠
dexp⚠
die⚠
div⚠
dpi⚠
dpow⚠
drem⚠
dsin⚠
dtan⚠
dtof⚠
ecvt⚠
erf⚠
erfc⚠
erff⚠
erfl⚠
exit⚠
exp⚠
exp2⚠
expf⚠
expl⚠
fabs⚠
fcvt⚠
fdim⚠
feof⚠
ffs⚠
ffsl⚠
fls⚠
fma⚠
fmaf⚠
fmal⚠
fmax⚠
fmin⚠
fmod⚠
free⚠
ftod⚠
gcvt⚠
getc⚠
getw⚠
j0⚠
j0f⚠
j0l⚠
j1⚠
j1f⚠
j1l⚠
jn⚠
jnf⚠
jnl⚠
kill⚠
l64a⚠
labs⚠
ldiv⚠
log2⚠
logb⚠
logf⚠
logl⚠
lpad⚠
modf⚠
nan⚠
nanf⚠
nanl⚠
now⚠
open⚠
oper⚠
pow⚠
powf⚠
powl⚠
putc⚠
puts⚠
putw⚠
rand⚠
rcmd⚠
recv⚠
rint⚠
rpad⚠
send⚠
sin⚠
sinf⚠
sinh⚠
sinl⚠
sqrt⚠
tan⚠
tanf⚠
tanh⚠
tanl⚠
time⚠
y0⚠
y0f⚠
y0l⚠
y1⚠
y1f⚠
y1l⚠
yn⚠
ynf⚠
ynl⚠
Type Definitions
Other Statements (no optimizations required)
pmod.h – *
POSTGRES processing mode definitions. *