pub struct NaturalJoinNode { /* private fields */ }Trait Implementations§
Source§impl QueryNode for NaturalJoinNode
impl QueryNode for NaturalJoinNode
Source§fn initialize<'a>(
&mut self,
rx: &mut Transaction<'a>,
ctx: &QueryContext,
) -> Result<()>
fn initialize<'a>( &mut self, rx: &mut Transaction<'a>, ctx: &QueryContext, ) -> Result<()>
Initialize the operator with execution context
Called once before iteration begins
Source§fn next<'a>(
&mut self,
rx: &mut Transaction<'a>,
ctx: &mut QueryContext,
) -> Result<Option<Columns>>
fn next<'a>( &mut self, rx: &mut Transaction<'a>, ctx: &mut QueryContext, ) -> Result<Option<Columns>>
Get the next batch of results (volcano iterator pattern)
Returns None when exhausted
Source§fn headers(&self) -> Option<ColumnHeaders>
fn headers(&self) -> Option<ColumnHeaders>
Get the headers of columns this node produces
Source§fn next_lazy<'a>(
&mut self,
_rx: &mut Transaction<'a>,
_ctx: &mut QueryContext,
) -> Result<Option<LazyBatch>>
fn next_lazy<'a>( &mut self, _rx: &mut Transaction<'a>, _ctx: &mut QueryContext, ) -> Result<Option<LazyBatch>>
Get the next batch as a LazyBatch for deferred materialization
Returns None if this node doesn’t support lazy evaluation or is exhausted
Default implementation returns None (falls back to materialized evaluation)
Source§fn set_scan_limit(&mut self, _limit: usize)
fn set_scan_limit(&mut self, _limit: usize)
Hint the maximum number of rows this scan needs to produce.
Scan operators override this to cap their batch size.
Non-scan operators ignore it (default no-op).
Auto Trait Implementations§
impl Freeze for NaturalJoinNode
impl !RefUnwindSafe for NaturalJoinNode
impl Send for NaturalJoinNode
impl Sync for NaturalJoinNode
impl Unpin for NaturalJoinNode
impl UnsafeUnpin for NaturalJoinNode
impl !UnwindSafe for NaturalJoinNode
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> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self file descriptor. Read moreSource§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