pub enum ImplStrategy {
SqlBuiltin(&'static str),
SqlExpression(&'static str),
SqlOperator(&'static str),
PylonFunction(PylonFnDef),
TranspilerIntrinsic(&'static str),
}Expand description
How the transpiler should emit a stdlib function call.
Variants§
SqlBuiltin(&'static str)
Delegates to a named PostgreSQL built-in. No _pylon function installed.
SqlExpression(&'static str)
Inline SQL template; $1, $2, … are positional placeholders.
SqlOperator(&'static str)
Maps to a SQL infix operator; transpiler emits $1 op $2.
PylonFunction(PylonFnDef)
Installs a function in the _pylon schema via export_stdlib().
TranspilerIntrinsic(&'static str)
Special transpiler rewriting — no _pylon function is installed.
The transpiler substitutes type-specific PG expressions at compile time
(e.g. range → int8range(...), multirange → int8multirange(...)).
Trait Implementations§
Source§impl Clone for ImplStrategy
impl Clone for ImplStrategy
Source§impl Debug for ImplStrategy
impl Debug for ImplStrategy
impl Eq for ImplStrategy
Source§impl PartialEq for ImplStrategy
impl PartialEq for ImplStrategy
impl StructuralPartialEq for ImplStrategy
Auto Trait Implementations§
impl Freeze for ImplStrategy
impl RefUnwindSafe for ImplStrategy
impl Send for ImplStrategy
impl Sync for ImplStrategy
impl Unpin for ImplStrategy
impl UnsafeUnpin for ImplStrategy
impl UnwindSafe for ImplStrategy
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.