pub struct Lowerer { /* private fields */ }Expand description
Lowerer transforms AST programs into RIR execution plans.
Implementations§
Source§impl Lowerer
impl Lowerer
Sourcepub fn set_max_active_rules(&mut self, max: usize)
pub fn set_max_active_rules(&mut self, max: usize)
Set the maximum active rules for TensorMaskedJoin.
Sourcepub fn rel_ids(&self) -> &HashMap<String, RelId>
pub fn rel_ids(&self) -> &HashMap<String, RelId>
Get the mapping from predicate names to relation IDs
Sourcepub fn infer_and_validate_schemas(&mut self, program: &Program) -> Result<()>
pub fn infer_and_validate_schemas(&mut self, program: &Program) -> Result<()>
Infer predicate schemas and validate the type flow within every rule.
This applies the schema/type contract shared by execution routes without
preprocessing, stratifying, validating unrelated term forms, or building
an execution plan. The inferred schemas remain available through
Lowerer::schemas.
Sourcepub fn lower_program(&mut self, program: &Program) -> Result<ExecutionPlan>
pub fn lower_program(&mut self, program: &Program) -> Result<ExecutionPlan>
Lower an entire program to an execution plan
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Lowerer
impl RefUnwindSafe for Lowerer
impl Send for Lowerer
impl Sync for Lowerer
impl Unpin for Lowerer
impl UnsafeUnpin for Lowerer
impl UnwindSafe for Lowerer
Blanket Implementations§
impl<T> Allocation for T
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