[][src]Crate evaluator

Provides interfaces and implementations for logic constructs that return values without accepting arguments, either via closure captures, global state, calculation or otherwise.

Structs

DummyEval

Implements dummy evaluation of clonable and non-clonable types: every time the eval() method is called, a fixed value is returned.

Eval

Implements cached (lazy) evaluation of clonable types via closures.

ImmEval

Implements immediate evaluation via closures.

RcEval

Implements cached (lazy) evaluation of clonable and non-clonable types via closures.

Traits

Evaluator

An interface for immediate evaluation (without caching) for any types and cached (lazy) evaluation for types that implement Clone, including those that implement Copy, integers and floats being the simplest examples.

RcEvaluator

An interface for cached (lazy) evaluation for types that do not implement Clone (note that Clone is a supertrait of Copy).