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§
Sourcefn propagate_values(&mut self, env: &mut ValueEnvironment) -> bool
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.
Sourcefn is_constant(&self) -> bool
fn is_constant(&self) -> bool
Returns true if the node reduces to a constant value.
Sourcefn is_boolean(&self) -> bool
fn is_boolean(&self) -> bool
Returns true if the node reduces to a boolean value.
Sourcefn is_field_element(&self) -> bool
fn is_field_element(&self) -> bool
Returns true if the node reduces to a field element.
Sourcefn value(&self) -> Option<&ValueReduction>
fn value(&self) -> Option<&ValueReduction>
Returns the value if the node reduces to a constant, and None otherwise.