pub struct Dynamic { /* private fields */ }Expand description
A dynamically typed Ast node.
Implementations§
Source§impl Dynamic
impl Dynamic
pub fn from_ast(ast: &dyn Ast) -> Self
pub fn new_const<S: Into<Symbol>>(name: S, sort: &Sort) -> Self
pub fn fresh_const(prefix: &str, sort: &Sort) -> Self
pub fn sort_kind(&self) -> SortKind
Sourcepub fn as_datatype(&self) -> Option<Datatype>
pub fn as_datatype(&self) -> Option<Datatype>
Returns None if the Dynamic is not actually a Datatype
Source§impl Dynamic
impl Dynamic
pub fn ast_eq<T: IntoAst<Self>>(&self, other: T) -> boolwhere
Self: Sized,
pub fn _eq<T: IntoAst<Self>>(&self, other: T) -> Boolwhere
Self: Sized,
👎Deprecated: Please use eq instead
pub fn ne<T: IntoAst<Self>>(&self, other: T) -> Boolwhere
Self: Sized,
Sourcepub fn eq<T: IntoAst<Self>>(&self, other: T) -> Boolwhere
Self: Sized,
pub fn eq<T: IntoAst<Self>>(&self, other: T) -> Boolwhere
Self: Sized,
Compare this Ast with another Ast, and get a Bool
representing the result.
This operation works with all possible Asts (int, real, BV, etc), but the two
Asts being compared must be the same type.
pub fn _safe_eq<T: IntoAst<Self>>(&self, other: T) -> Result<Bool, SortDiffers>where
Self: Sized,
👎Deprecated: Please use safe_eq instead
Trait Implementations§
Source§impl Ast for Dynamic
impl Ast for Dynamic
fn eq<T: IntoAst<Self>>(&self, other: T) -> Boolwhere
Self: Sized,
fn ne<T: IntoAst<Self>>(&self, other: T) -> Boolwhere
Self: Sized,
fn get_ctx(&self) -> &Context
fn get_z3_ast(&self) -> Z3_ast
Source§fn simplify(&self) -> Selfwhere
Self: Sized,
fn simplify(&self) -> Selfwhere
Self: Sized,
Simplify the
Ast. Returns a new Ast which is equivalent,
but simplified using algebraic simplification rules, such as
constant propagation.Source§fn substitute<T: Ast>(&self, substitutions: &[(&T, &T)]) -> Selfwhere
Self: Sized,
fn substitute<T: Ast>(&self, substitutions: &[(&T, &T)]) -> Selfwhere
Self: Sized,
Performs substitution on the
Ast. The slice substitutions contains a
list of pairs with a “from” Ast that will be substituted by a “to” Ast.Source§fn num_children(&self) -> usize
fn num_children(&self) -> usize
Return the number of children of this
Ast. Read morefn safe_decl(&self) -> Result<FuncDecl, IsNotApp>
fn check_ctx(&self, ctx: &Context)
Source§impl Solvable for Dynamic
impl Solvable for Dynamic
Source§fn read_from_model(
&self,
model: &Model,
model_completion: bool,
) -> Option<Self::ModelInstance>
fn read_from_model( &self, model: &Model, model_completion: bool, ) -> Option<Self::ModelInstance>
Source§fn generate_constraint(&self, model: &Self::ModelInstance) -> Bool
fn generate_constraint(&self, model: &Self::ModelInstance) -> Bool
impl Eq for Dynamic
Auto Trait Implementations§
impl Freeze for Dynamic
impl RefUnwindSafe for Dynamic
impl !Send for Dynamic
impl !Sync for Dynamic
impl Unpin for Dynamic
impl UnsafeUnpin for Dynamic
impl UnwindSafe for Dynamic
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more