pub struct RoutineInvocationBinding {
pub argument_positions: Vec<usize>,
pub argument_targets: Vec<String>,
pub parameter_types: Vec<String>,
pub return_type: Option<String>,
pub variadic_mode: RoutineVariadicMode,
}Expand description
Concrete parameter and result types selected for one routine invocation.
Fields§
§argument_positions: Vec<usize>Zero-based declared parameter index for each call argument, aligned with the call argument list.
argument_targets: Vec<String>Concrete coercion target for each call argument, aligned with the call argument list.
parameter_types: Vec<String>Concrete type for each declared parameter, aligned with crate::ast::CreateFunction::params.
return_type: Option<String>Concrete invocation result type after polymorphic substitution.
variadic_mode: RoutineVariadicModeWhether and where the declared variadic parameter participates in this invocation.
Trait Implementations§
Source§impl Clone for RoutineInvocationBinding
impl Clone for RoutineInvocationBinding
Source§fn clone(&self) -> RoutineInvocationBinding
fn clone(&self) -> RoutineInvocationBinding
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for RoutineInvocationBinding
impl Debug for RoutineInvocationBinding
Source§impl<'de> Deserialize<'de> for RoutineInvocationBinding
impl<'de> Deserialize<'de> for RoutineInvocationBinding
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for RoutineInvocationBinding
Source§impl PartialEq for RoutineInvocationBinding
impl PartialEq for RoutineInvocationBinding
Source§impl Serialize for RoutineInvocationBinding
impl Serialize for RoutineInvocationBinding
impl StructuralPartialEq for RoutineInvocationBinding
Auto Trait Implementations§
impl Freeze for RoutineInvocationBinding
impl RefUnwindSafe for RoutineInvocationBinding
impl Send for RoutineInvocationBinding
impl Sync for RoutineInvocationBinding
impl Unpin for RoutineInvocationBinding
impl UnsafeUnpin for RoutineInvocationBinding
impl UnwindSafe for RoutineInvocationBinding
Blanket Implementations§
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more