mirror of
https://github.com/Z3Prover/z3
synced 2025-08-18 01:02:15 +00:00
add ad-hoc any-of for cross compatibility and simplifying interface
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
de9368bab0
commit
49d1490454
2 changed files with 17 additions and 6 deletions
|
@ -44,7 +44,10 @@ class model_reconstruction_trail {
|
|||
bool is_loose() const { return !m_removed.empty(); }
|
||||
|
||||
bool intersects(ast_mark const& free_vars) const {
|
||||
return std::any_of(m_subst->sub().begin(), m_subst->sub().end(), [&](auto const& kv) { return free_vars.is_marked(kv.m_key); });
|
||||
for (auto const& [k, v] : m_subst->sub())
|
||||
if (free_vars.is_marked(k))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
@ -61,8 +64,7 @@ class model_reconstruction_trail {
|
|||
|
||||
bool intersects(ast_mark const& free_vars, dependent_expr const& d) {
|
||||
expr_ref term(d.fml(), d.get_manager());
|
||||
auto iter = subterms::all(term);
|
||||
return std::any_of(iter.begin(), iter.end(), [&](expr* t) { return free_vars.is_marked(t); });
|
||||
return any_of(subterms::all(term), [&](expr* t) { return free_vars.is_marked(t); });
|
||||
}
|
||||
|
||||
bool intersects(ast_mark const& free_vars, vector<dependent_expr> const& added) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue