pub struct PylonFnDef {
pub name: &'static str,
pub language: SqlLanguage,
pub volatility: FnVolatility,
pub strict: bool,
pub returns_override: Option<&'static str>,
pub body: &'static str,
}Expand description
The SQL definition for one _pylon schema function overload.
Each FnDescriptor with ImplStrategy::PylonFunction(def) installs a
separate overload in PostgreSQL — PG resolves them by argument types.
Fields§
§name: &'static strUnqualified name in the _pylon schema, e.g. "to_bool".
language: SqlLanguage§volatility: FnVolatility§strict: boolWhen false the function is called even when arguments are NULL.
Required for optional msg parameters that legitimately accept NULL.
returns_override: Option<&'static str>Override for the PostgreSQL RETURNS clause. When None, derived from
the owning FnDescriptor’s return_type.
body: &'static strSQL body — the content between $$ delimiters.
Trait Implementations§
Source§impl Clone for PylonFnDef
impl Clone for PylonFnDef
Source§impl Debug for PylonFnDef
impl Debug for PylonFnDef
impl Eq for PylonFnDef
Source§impl PartialEq for PylonFnDef
impl PartialEq for PylonFnDef
impl StructuralPartialEq for PylonFnDef
Auto Trait Implementations§
impl Freeze for PylonFnDef
impl RefUnwindSafe for PylonFnDef
impl Send for PylonFnDef
impl Sync for PylonFnDef
impl Unpin for PylonFnDef
impl UnsafeUnpin for PylonFnDef
impl UnwindSafe for PylonFnDef
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.