[−][src]Crate pgx
pgx
is a framework for creating Postgres extensions in 100% Rust
Example
use pgx::*; pg_module_magic!(); // Convert the input string to lowercase and return #[pg_extern] fn my_to_lowercase(input: &'static str) -> String { input.to_lowercase() }
Re-exports
pub use atomics::*; |
pub use callbacks::*; |
pub use datum::*; |
pub use enum_helper::*; |
pub use fcinfo::*; |
pub use guc::*; |
pub use hooks::*; |
pub use htup::*; |
pub use inoutfuncs::*; |
pub use itemptr::*; |
pub use list::*; |
pub use log::*; |
pub use lwlock::*; |
pub use memcxt::*; |
pub use namespace::*; |
pub use nodes::*; |
pub use pgbox::*; |
pub use rel::*; |
pub use shmem::*; |
pub use spi::*; |
pub use stringinfo::*; |
pub use trigger_support::*; |
pub use tupdesc::*; |
pub use varlena::*; |
pub use wrappers::*; |
pub use xid::*; |
pub use pgx_pg_sys as pg_sys; |
Modules
atomics | |
bgworkers | Safely create Postgres Background Workers, including with full SPI support |
callbacks | Provides safe wrappers around Postgres' "Transaction" and "Sub Transaction" hook system |
datum | Handing for easily converting Postgres Datum types into their corresponding Rust types and converting Rust types into their corresponding Postgres types |
enum_helper | Helper functions for working with Postgres |
fcinfo | Helper macros and functions for creating Postgres UDFs. |
guard | |
guc | Provides a safe interface into Postgres' Configuration System (GUC) |
hooks | A trait and registration system for hooking Postgres internal operations such as its planner and executor |
htup | Utility functions for working with |
inoutfuncs | Helper trait for the |
itemptr | Helper functions for working with Postgres |
list | A safe wrapper around Postgres' internal |
log | Access to Postgres' logging system |
lwlock | |
memcxt | Provides interfacing into Postgres' |
misc | |
namespace | A helper struct for creating a Postgres |
nodes | Helper functions and such for Postgres' various query tree |
pgbox | |
rel | Provides a safe wrapper around Postgres' |
shmem | |
spi | Safe access to Postgres' Server Programming Interface (SPI). |
stringinfo | A safe wrapper around Postgres |
trigger_support | Helper functions for working with custom Rust trigger functions |
tupdesc | Provides a safe wrapper around Postgres' |
varlena | Helper functions to work with Postgres |
wrappers | Provides safe wrapper functions around some of Postgres' useful functions. |
xid |
Macros
FATAL | Log to Postgres' |
PANIC | Log to Postgres' |
check_for_interrupts | If an interrupt is pending (perhaps a user-initiated "cancel query" message to this backend), this will safely abort the current transaction |
debug1 | Log to Postgres' |
debug2 | Log to Postgres' |
debug3 | Log to Postgres' |
debug4 | Log to Postgres' |
debug5 | Log to Postgres' |
default | A macro for specifying default argument values so they get propery translated to SQL in
|
error | Log to Postgres' |
extension_sql | Embed SQL directly into the generated extension script. |
info | Log to Postgres' |
log | Log to Postgres' |
name | A macro for providing SQL names for the returned fields for functions that return a Rust tuple,
especially those that return a |
notice | Log to Postgres' |
pg_module_magic | A macro for marking a library compatible with the Postgres extension framework. |
pg_shmem_init | In order to store a type in Postgres Shared Memory, it must be passed to
|
variadic | |
warning | Log to Postgres' |
Structs
JumpContext | |
PgTryResult | A |
PgxPanic |
Enums
PgBuiltInOids | |
PgOid |
Functions
guard | Guard a closure such that Rust Panics are properly converted into Postgres ERRORs |
initialize | Top-level initialization function. This is called automatically by the |
name_data_to_str | Converts a |
pg_try | Similar to |
register_pg_guard_panic_handler |
Attribute Macros
commutator | Used with |
hashes | Used with |
initialize | Associated macro for |
join | Used with |
merges | Used with |
negator | Used with |
opname | Used with |
pg_extern | Declare a function as |
pg_guard | Declare a function as |
pg_operator | Declare a function as |
pg_test |
|
restrict | Used with |
search_path | Associated macro for |
Derive Macros
PostgresEnum | |
PostgresEq | |
PostgresGucEnum | |
PostgresHash | |
PostgresOrd | |
PostgresType |