[][src]Trait declarative_dataflow::plan::ImplContext

pub trait ImplContext<T> where
    T: Timestamp + Lattice + TotalOrder
{ fn rule(&self, name: &str) -> Option<&Rule>;
fn global_arrangement(
        &mut self,
        name: &str
    ) -> Option<&mut RelationHandle<T>>;
fn has_attribute(&self, name: &str) -> bool;
fn forward_index(
        &mut self,
        name: &str
    ) -> Option<&mut CollectionIndex<Value, Value, T>>;
fn reverse_index(
        &mut self,
        name: &str
    ) -> Option<&mut CollectionIndex<Value, Value, T>>;
fn is_underconstrained(&self, name: &str) -> bool; }

A thing that can provide global state required during the implementation of plans.

Required methods

fn rule(&self, name: &str) -> Option<&Rule>

Returns the definition for the rule of the given name.

fn global_arrangement(&mut self, name: &str) -> Option<&mut RelationHandle<T>>

Returns a mutable reference to a (non-base) relation, if one is registered under the given name.

fn has_attribute(&self, name: &str) -> bool

Checks whether an attribute of that name exists.

fn forward_index(
    &mut self,
    name: &str
) -> Option<&mut CollectionIndex<Value, Value, T>>

Returns a mutable reference to an attribute (a base relation) arranged from eid -> value, if one is registered under the given name.

fn reverse_index(
    &mut self,
    name: &str
) -> Option<&mut CollectionIndex<Value, Value, T>>

Returns a mutable reference to an attribute (a base relation) arranged from value -> eid, if one is registered under the given name.

fn is_underconstrained(&self, name: &str) -> bool

Returns the current opinion as to whether this rule is underconstrained. Underconstrained rules cannot be safely materialized and re-used on their own (i.e. without more specific constraints).

Loading content...

Implementors

impl<T> ImplContext<T> for Context<T> where
    T: Timestamp + Lattice + TotalOrder
[src]

Loading content...