[][src]Module splr::types

Crate types provides various building blocks, including some common traits.

Structs

CNFDescription

data about a problem.

CNFReader

A wrapper structure to make a CNFDescription from a file. To make CNFDescription clonable, a BufReader should be separated from it. If you want to make a CNFDescription which isn't connected to a file, just call CNFDescription::default() directly.

Ema

Exponential Moving Average w/ a calibrator

Ema2

Exponential Moving Average pair

Flag
Lit

Literal encoded on u32 as:

Enums

SolverError

Internal errors Note: returning Result<(), a-singleton> is identical to returning bool.

Constants

NULL_LIT

a dummy literal.

Traits

ActivityIF

API for clause and var rewarding

Delete

API for O(n) deletion from a list, providing delete_unstable.

EmaIF

API for Exponential Moving Average, EMA, like get, reset, update and so on.

FlagIF

API for object properties.

Instantiate

API for object instantiation based on Configuration and CNFDescription

LitIF

API for Literal like from_int, from_assign, to_cid and so on.

Functions

vec2int

convert [Lit] to [i32] (for debug)

Type Definitions

MaybeInconsistent

A Return type used by solver functions

VarId

'Variable' identifier or 'variable' index, starting with one. Implementation note: NonZeroUsize can be used but requires a lot of changes. The current abstraction is imcomplete.