Struct boolean_expression::Cube [] [src]

pub struct Cube(_);

A Cube is one (multidimensional) cube in the variable space: i.e., a particular set of variable assignments, where each variable is assigned either true, false, or "don't care".

Methods

impl Cube
[src]

fn true_cube(vars: usize) -> Cube

Construct an always-true cube (all variables are DontCare) for vars variables.

fn vars(&self) -> Iter<CubeVar>

Return an iterator over variable assignments.

fn merge_with(&self, other: &Cube) -> CubeMergeResult

Attempt to merge this cube with another, which may cancel one or the other (if completely covered), expand one or the other (if possible, to increase the number of DontCares and thus simplify the final expression), or merge the two into a single cube, or do nothing.

fn with_var(&self, idx: usize, val: CubeVar) -> Cube

Return a new cube equal to this cube, but with the particular variable

Trait Implementations

impl Debug for Cube
[src]

fn fmt(&self, __arg_0: &mut Formatter) -> Result

Formats the value using the given formatter.

impl Clone for Cube
[src]

fn clone(&self) -> Cube

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)
1.0.0

Performs copy-assignment from source. Read more

impl PartialEq for Cube
[src]

fn eq(&self, other: &Self) -> bool

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &Rhs) -> bool
1.0.0

This method tests for !=.

impl Eq for Cube
[src]

impl PartialOrd for Cube
[src]

fn partial_cmp(&self, other: &Self) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more

fn lt(&self, other: &Rhs) -> bool
1.0.0

This method tests less than (for self and other) and is used by the < operator. Read more

fn le(&self, other: &Rhs) -> bool
1.0.0

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

fn gt(&self, other: &Rhs) -> bool
1.0.0

This method tests greater than (for self and other) and is used by the > operator. Read more

fn ge(&self, other: &Rhs) -> bool
1.0.0

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl Ord for Cube
[src]

fn cmp(&self, other: &Self) -> Ordering

This method returns an Ordering between self and other. Read more