mirror of
https://github.com/Z3Prover/z3
synced 2026-06-22 08:30:28 +00:00
use expr based access to enodes to allow for storing first-class lambas
This commit is contained in:
parent
5f3088f3b5
commit
2cc4422018
54 changed files with 301 additions and 279 deletions
|
|
@ -2103,7 +2103,7 @@ app* theory_seq::get_ite_value(expr* e) {
|
|||
}
|
||||
|
||||
model_value_proc * theory_seq::mk_value(enode * n, model_generator & mg) {
|
||||
app* e = n->get_expr();
|
||||
expr* e = n->get_expr();
|
||||
TRACE(seq, tout << mk_pp(e, m) << "\n";);
|
||||
|
||||
// Shortcut for well-founded values to avoid some quadratic overhead
|
||||
|
|
@ -2163,7 +2163,7 @@ model_value_proc * theory_seq::mk_value(enode * n, model_generator & mg) {
|
|||
}
|
||||
|
||||
|
||||
app* theory_seq::mk_value(app* e) {
|
||||
app* theory_seq::mk_value(expr* e) {
|
||||
expr_ref result(m);
|
||||
e = get_ite_value(e);
|
||||
result = m_rep.find(e);
|
||||
|
|
@ -3286,7 +3286,10 @@ void theory_seq::pop_scope_eh(unsigned num_scopes) {
|
|||
void theory_seq::restart_eh() {
|
||||
}
|
||||
|
||||
void theory_seq::relevant_eh(app* n) {
|
||||
void theory_seq::relevant_eh(expr* _n) {
|
||||
if (!is_app(_n))
|
||||
return;
|
||||
app *n = to_app(_n);
|
||||
if (m_util.str.is_index(n) ||
|
||||
m_util.str.is_replace(n) ||
|
||||
m_util.str.is_extract(n) ||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue