pub use ::pgrx_macros::*;
pub use crate::pg_sys;
pub use crate::pg_module_magic;
pub use crate::{default, impl_sql_translatable, name};
pub use crate::iter::{SetOfIterator, TableIterator};
pub use crate::heap_tuple::{PgHeapTuple, PgHeapTupleError};
pub use crate::pgbox::{AllocatedByPostgres, AllocatedByRust, PgBox, WhoAllocated};
pub use crate::inoutfuncs::{InOutFuncs, PgVarlenaInOutFuncs};
pub use crate::{
datum::{
AnyNumeric, Array, ArraySliceError, Date, FromDatum, Interval, IntoDatum, Numeric,
PgVarlena, PostgresType, Range, RangeBound, RangeSubType, Time, TimeWithTimeZone,
Timestamp, TimestampWithTimeZone, VariadicArray, datetime_support::*,
},
oids_of,
};
pub use crate::trigger_support::{
PgTrigger, PgTriggerError, PgTriggerLevel, PgTriggerOperation, PgTriggerWhen,
};
pub use crate::aggregate::{Aggregate, FinalizeModify, ParallelOption};
pub use crate::pg_sys::PgBuiltInOids;
pub use crate::pg_sys::oids::PgOid;
pub use crate::pg_sys::pg_try::PgTryBuilder;
pub use crate::pg_sys::utils::name_data_to_str;
pub use crate::spi;
pub use crate::spi::Spi;
pub use crate::pg_sys::elog::PgLogLevel;
pub use crate::pg_sys::errcodes::PgSqlErrorCode;
pub use crate::pg_sys::{
FATAL, PANIC, check_for_interrupts, debug1, debug2, debug3, debug4, debug5, ereport,
ereport_domain, error, function_name, info, log, notice, warning,
};
#[cfg(test)]
mod tests {
use crate::pgrx_sql_entity_graph::metadata::{
ReturnsRef, SqlMappingRef, SqlTranslatable, TypeOrigin,
};
use crate::prelude::*;
struct PreludeMacroType;
impl_sql_translatable!(PreludeMacroType, "uuid");
#[test]
fn prelude_reexports_impl_sql_translatable() {
assert_eq!(
<PreludeMacroType as SqlTranslatable>::TYPE_IDENT,
concat!(module_path!(), "::", "PreludeMacroType")
);
assert_eq!(<PreludeMacroType as SqlTranslatable>::TYPE_ORIGIN, TypeOrigin::External);
assert_eq!(
<PreludeMacroType as SqlTranslatable>::ARGUMENT_SQL,
Ok(SqlMappingRef::literal("uuid"))
);
assert_eq!(
<PreludeMacroType as SqlTranslatable>::RETURN_SQL,
Ok(ReturnsRef::One(SqlMappingRef::literal("uuid")))
);
}
}