pub struct Routine {
pub schema: String,
pub name: String,
pub description: Option<String>,
pub params: Vec<RoutineParam>,
pub return_type: RetType,
pub volatility: FuncVolatility,
pub has_variadic: bool,
pub isolation_level: Option<String>,
pub settings: Vec<(String, String)>,
pub is_procedure: bool,
}Expand description
A stored function or procedure.
Fields§
§schema: StringSchema name
name: StringFunction name
description: Option<String>Description from comment
params: Vec<RoutineParam>Function parameters
return_type: RetTypeReturn type
volatility: FuncVolatilityFunction volatility
has_variadic: boolWhether the function has VARIADIC parameters
isolation_level: Option<String>Isolation level (if set by function)
settings: Vec<(String, String)>Function-level GUC settings
is_procedure: boolWhether this is a procedure (vs function)
Implementations§
Source§impl Routine
impl Routine
Sourcepub fn qualified_identifier(&self) -> QualifiedIdentifier
pub fn qualified_identifier(&self) -> QualifiedIdentifier
Get the qualified identifier for this routine.
Sourcepub fn is_safe_for_get(&self) -> bool
pub fn is_safe_for_get(&self) -> bool
Check if this function is safe for GET requests.
Sourcepub fn required_params(&self) -> impl Iterator<Item = &RoutineParam>
pub fn required_params(&self) -> impl Iterator<Item = &RoutineParam>
Get required parameters (no default).
Sourcepub fn find_param(&self, name: &str) -> Option<&RoutineParam>
pub fn find_param(&self, name: &str) -> Option<&RoutineParam>
Find a parameter by name.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Routine
impl<'de> Deserialize<'de> for Routine
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
Auto Trait Implementations§
impl Freeze for Routine
impl RefUnwindSafe for Routine
impl Send for Routine
impl Sync for Routine
impl Unpin for Routine
impl UnwindSafe for Routine
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,
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> 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