pub trait ValueMeta {
    // Required methods
    fn propagate_values(&mut self, env: &mut ValueEnvironment) -> bool;
    fn is_constant(&self) -> bool;
    fn is_boolean(&self) -> bool;
    fn is_field_element(&self) -> bool;
    fn value(&self) -> Option<&ValueReduction>;
}

Required Methods§

Source

fn propagate_values(&mut self, env: &mut ValueEnvironment) -> bool

Propagate variable values defined by the environment to each sub-node. The method returns true if the node (or a sub-node) was updated.

Source

fn is_constant(&self) -> bool

Returns true if the node reduces to a constant value.

Source

fn is_boolean(&self) -> bool

Returns true if the node reduces to a boolean value.

Source

fn is_field_element(&self) -> bool

Returns true if the node reduces to a field element.

Source

fn value(&self) -> Option<&ValueReduction>

Returns the value if the node reduces to a constant, and None otherwise.

Implementors§