pub struct FjPlan {
pub num_vars: usize,
pub nodes: Vec<FjNode>,
pub output_vars: Vec<usize>,
}Expand description
A host-side Free Join plan over inputs (design §3). Callers hand-build
the plan today; planner construction from binary joins (binary2fj) is a
downstream integration surface.
Fields§
§num_vars: usizeNumber of distinct join variables (ids 0..num_vars).
nodes: Vec<FjNode>Plan nodes, executed in order.
output_vars: Vec<usize>Head projection: variable ids in output column order. When this is a strict subset of the bound variables the result is deduplicated (set semantics).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for FjPlan
impl RefUnwindSafe for FjPlan
impl Send for FjPlan
impl Sync for FjPlan
impl Unpin for FjPlan
impl UnsafeUnpin for FjPlan
impl UnwindSafe for FjPlan
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