Trait LogicValue

Source
pub trait LogicValue:
    Copy
    + Clone
    + PartialEq
    + Eq
    + Hash
    + 'static {
    // Required methods
    fn num_values() -> usize;
    fn value(idx: usize) -> Self;
    fn zero() -> Self;
    fn one() -> Self;
}
Expand description

Abstraction of logic values.

Required Methods§

Source

fn num_values() -> usize

Get number of different values that this type can have.

Source

fn value(idx: usize) -> Self

List of possible logic values.

Source

fn zero() -> Self

Additive neutral element.

Source

fn one() -> Self

Multiplicative neutral element.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl LogicValue for bool

Source§

fn num_values() -> usize

Source§

fn value(idx: usize) -> Self

Source§

fn zero() -> Self

Source§

fn one() -> Self

Implementors§