#include <bitwuzla_conv.h>
|
| | ~bitw_smt_ast () override=default |
| smt_astt | with_sort (smt_solver_baset *ctx, smt_sortt s) const override |
| | The same solver term under a different sort.
|
| void | dump () const override |
| | solver_smt_ast (smt_solver_baset *ctx, bitwuzla::Term _a, smt_sortt s) |
| | smt_ast (smt_solver_baset *ctx, smt_sortt s) |
| virtual | ~smt_ast ()=default |
| virtual smt_astt | ite (smt_solver_baset *ctx, smt_astt cond, smt_astt falseop) const |
| virtual smt_astt | eq (smt_solver_baset *ctx, smt_astt other) const |
| | Abstractly produce an equality.
|
| virtual void | assign (smt_solver_baset *ctx, smt_astt sym) const |
| | Abstractly produce an assign.
|
| virtual smt_astt | update (smt_solver_baset *ctx, smt_astt value, unsigned int idx, const expr2tc &idx_expr=expr2tc()) const |
| | Abstractly produce an "update", i.e., an array 'with' or tuple 'with'.
|
| virtual smt_astt | select (smt_solver_baset *ctx, const expr2tc &idx) const |
| | Select a value from an array, for both normal arrays and tuple arrays.
|
| virtual smt_astt | project (smt_solver_baset *ctx, unsigned int elem) const |
| | Project a member from a structure, or an field-array from a struct array.
|
◆ ~bitw_smt_ast()
| bitw_smt_ast::~bitw_smt_ast |
( |
| ) |
|
|
overridedefault |
◆ dump()
| void bitw_smt_ast::dump |
( |
| ) |
const |
|
overridevirtual |
◆ with_sort()
The same solver term under a different sort.
The default rewrites this node's sort in place, which is what the bit-vector-only backends have always relied on – there both sorts are the same solver sort. A backend where they are genuinely different solver sorts must return a fresh node, or the rewrite corrupts every other holder of this shared ast.
Reimplemented from smt_ast.
The documentation for this class was generated from the following files: