pub struct ArrayAccess { /* private fields */ }Expand description
Borrowed argument positions shared by analysis, evaluation and reconstruction.
Implementations§
Source§impl ArrayAccess
impl ArrayAccess
Sourcepub fn from_dispatch(
dispatch: FunctionDispatch,
arguments: usize,
is_bare_null: impl Fn(usize) -> bool,
) -> Option<Result<Self, SQLError>>
pub fn from_dispatch( dispatch: FunctionDispatch, arguments: usize, is_bare_null: impl Fn(usize) -> bool, ) -> Option<Result<Self, SQLError>>
Legacy slice plans use a bare NULL node for omitted syntax; typed and computed NULLs remain supplied expressions. Their original source SQL was not persisted.
pub fn validate_dimensions(self) -> Result<(), SQLError>
pub const fn slice_bounds(self) -> Option<ArraySliceBounds>
pub const fn bound_count(self) -> usize
pub fn is_omitted(self, argument: usize) -> bool
Sourcepub fn evaluation_order(self) -> impl Iterator<Item = usize>
pub fn evaluation_order(self) -> impl Iterator<Item = usize>
Execution visits all upper bounds, then all lower bounds. Analysis retains written lower/upper order instead.
Trait Implementations§
Source§impl Clone for ArrayAccess
impl Clone for ArrayAccess
impl Copy for ArrayAccess
Auto Trait Implementations§
impl Freeze for ArrayAccess
impl RefUnwindSafe for ArrayAccess
impl Send for ArrayAccess
impl Sync for ArrayAccess
impl Unpin for ArrayAccess
impl UnsafeUnpin for ArrayAccess
impl UnwindSafe for ArrayAccess
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