pub struct DirectBuildCompositeRow { /* private fields */ }Expand description
A direct-build composite row that owns the probe row directly.
This stores the probe Row directly without Arc wrapping, saving one Arc allocation per matched row. The build rows are shared via Arc for efficient access.
Implementations§
Source§impl DirectBuildCompositeRow
impl DirectBuildCompositeRow
Sourcepub fn new(
probe: Row,
build_rows: CompactArc<Vec<Row>>,
build_idx: usize,
probe_is_left: bool,
) -> Self
pub fn new( probe: Row, build_rows: CompactArc<Vec<Row>>, build_idx: usize, probe_is_left: bool, ) -> Self
Create a new direct-build composite row.
Sourcepub fn materialize(&self) -> Row
pub fn materialize(&self) -> Row
Materialize into an owned Row (cloning version).
Sourcepub fn materialize_owned(self) -> Row
pub fn materialize_owned(self) -> Row
Materialize into an owned Row by moving probe values.
Combines probe and build rows efficiently:
- Moves probe values (owned) - uses extend_into_compact_vec to avoid Vec allocation
- Clones build values (shared reference)
Trait Implementations§
Source§impl Clone for DirectBuildCompositeRow
impl Clone for DirectBuildCompositeRow
Source§impl Debug for DirectBuildCompositeRow
impl Debug for DirectBuildCompositeRow
Auto Trait Implementations§
impl Freeze for DirectBuildCompositeRow
impl RefUnwindSafe for DirectBuildCompositeRow
impl Send for DirectBuildCompositeRow
impl Sync for DirectBuildCompositeRow
impl Unpin for DirectBuildCompositeRow
impl UnsafeUnpin for DirectBuildCompositeRow
impl UnwindSafe for DirectBuildCompositeRow
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