pub struct PLpgSQLFunction {
pub datums: Vec<PLpgSQLDatum>,
pub action: PLpgSQLBlock,
pub found_datum: Option<usize>,
}Expand description
A parsed PL/pgSQL function body: the flat datum table plus the
outermost block.
Fields§
§datums: Vec<PLpgSQLDatum>§action: PLpgSQLBlock§found_datum: Option<usize>Index of the implicit FOUND variable in Self::datums.
Implementations§
Source§impl PLpgSQLFunction
impl PLpgSQLFunction
Sourcepub fn fori_variable_datums(&self) -> BTreeSet<usize>
pub fn fori_variable_datums(&self) -> BTreeSet<usize>
Datum indices used as FOR i IN a..b loop counters. The
interpreter binds these names only while their loop runs so an
outer variable with the same name stays visible elsewhere.
Sourcepub fn cursor_argument_datums(&self) -> BTreeSet<usize>
pub fn cursor_argument_datums(&self) -> BTreeSet<usize>
Datum indices used as bound-cursor arguments. They are visible only while the cursor query is bound, not throughout the routine body.
Trait Implementations§
Source§impl Clone for PLpgSQLFunction
impl Clone for PLpgSQLFunction
Source§fn clone(&self) -> PLpgSQLFunction
fn clone(&self) -> PLpgSQLFunction
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 moreAuto Trait Implementations§
impl Freeze for PLpgSQLFunction
impl RefUnwindSafe for PLpgSQLFunction
impl Send for PLpgSQLFunction
impl Sync for PLpgSQLFunction
impl Unpin for PLpgSQLFunction
impl UnsafeUnpin for PLpgSQLFunction
impl UnwindSafe for PLpgSQLFunction
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> 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