Struct easy_smt::ContextBuilder
source · pub struct ContextBuilder { /* private fields */ }
Implementations§
source§impl ContextBuilder
impl ContextBuilder
sourcepub fn solver<P, A>(&mut self, program: P, args: A) -> &mut Selfwhere
P: Into<OsString>,
A: IntoIterator,
A::Item: Into<OsString>,
pub fn solver<P, A>(&mut self, program: P, args: A) -> &mut Selfwhere P: Into<OsString>, A: IntoIterator, A::Item: Into<OsString>,
Configure the solver that will be used.
By default, no solver is configured, and any Context
created will only
be able to build and display expressions, not assert them or query for
their satisfiability.
sourcepub fn without_solver(&mut self) -> &mut Self
pub fn without_solver(&mut self) -> &mut Self
Clear the solver configuration, if any.
This returns to the default, no-solver configuration, where any
Context
created will only be able to build and display expressions,
not assert them or query for their satisfiability.
sourcepub fn replay_file<W>(&mut self, replay_file: Option<W>) -> &mut Selfwhere
W: 'static + Write,
pub fn replay_file<W>(&mut self, replay_file: Option<W>) -> &mut Selfwhere W: 'static + Write,
An optional file (or anything else that is std::io::Write
-able) where
all solver queries and commands are tee’d too.
This let’s you replay interactions with the solver offline, without needing to dynamically rebuild your expressions, queries, or commands.
This is unused if no solver is configured.
By default, there is no replay file configured.