pub struct SubqueryExecutor { /* private fields */ }Expand description
Subquery executor handles evaluation of nested queries
Implementations§
Source§impl SubqueryExecutor
impl SubqueryExecutor
Sourcepub fn new(num_subqueries: usize) -> SubqueryExecutor
pub fn new(num_subqueries: usize) -> SubqueryExecutor
Create new executor with space for n subqueries
Sourcepub fn eval_exists<F>(
&mut self,
def: &SubqueryDef,
outer_binding: &Binding,
execute_subquery: F,
) -> bool
pub fn eval_exists<F>( &mut self, def: &SubqueryDef, outer_binding: &Binding, execute_subquery: F, ) -> bool
Evaluate an EXISTS subquery
Sourcepub fn eval_scalar<F>(
&mut self,
def: &SubqueryDef,
outer_binding: &Binding,
result_var: &Var,
execute_subquery: F,
) -> Option<Value>
pub fn eval_scalar<F>( &mut self, def: &SubqueryDef, outer_binding: &Binding, result_var: &Var, execute_subquery: F, ) -> Option<Value>
Evaluate a scalar subquery
Sourcepub fn eval_in<F>(
&mut self,
def: &SubqueryDef,
outer_binding: &Binding,
check_value: &Value,
result_var: &Var,
execute_subquery: F,
) -> bool
pub fn eval_in<F>( &mut self, def: &SubqueryDef, outer_binding: &Binding, check_value: &Value, result_var: &Var, execute_subquery: F, ) -> bool
Evaluate an IN subquery
Sourcepub fn eval_any<F>(
&mut self,
def: &SubqueryDef,
outer_binding: &Binding,
check_value: &Value,
op: CompareOp,
result_var: &Var,
execute_subquery: F,
) -> bool
pub fn eval_any<F>( &mut self, def: &SubqueryDef, outer_binding: &Binding, check_value: &Value, op: CompareOp, result_var: &Var, execute_subquery: F, ) -> bool
Evaluate an ANY subquery
Auto Trait Implementations§
impl Freeze for SubqueryExecutor
impl RefUnwindSafe for SubqueryExecutor
impl Send for SubqueryExecutor
impl Sync for SubqueryExecutor
impl Unpin for SubqueryExecutor
impl UnsafeUnpin for SubqueryExecutor
impl UnwindSafe for SubqueryExecutor
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> 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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request