[][src]Struct varisat_checker::hash::ClauseHasher

pub struct ClauseHasher {
    pub hash_bits: u32,
    pub buffered_solver_var_names: Vec<(Var, Option<Var>)>,
    pub rename_in_buffered_solver_var_names: bool,
    solver_var_names: HashMap<Var, Var>,
}

Fields

hash_bits: u32

How many bits are used for storing clause hashes.

buffered_solver_var_names: Vec<(Var, Option<Var>)>

Changed solver names that are not yet reflected in the checkers current clause hashes.

rename_in_buffered_solver_var_names: bool

Does buffered_solver_var_names contain a new name?

If it contains only deletes, there is no need to rehash

solver_var_names: HashMap<Var, Var>

Current mapping from global var names to solver var names, used for hashing.

Methods

impl ClauseHasher[src]

pub fn clause_hash(&self, lits: &[Lit]) -> ClauseHash[src]

Compute a clause hash of the current bit size

Trait Implementations

impl Default for ClauseHasher[src]

Auto Trait Implementations

impl Send for ClauseHasher

impl Sync for ClauseHasher

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<Reference, Outer, OuterFieldType, Inner> HasPart<Nested<Outer, Inner>> for Reference where
    Inner: Part,
    Outer: Part<PartType = Field<OuterFieldType>>,
    OuterFieldType: HasPart<Inner, RawTarget = OuterFieldType> + PartialRefTarget + ?Sized,
    Reference: HasPart<Outer> + ?Sized