3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-08-27 13:39:49 +00:00
z3/src/tactic/goal_util.cpp
Nikolaj Bjorner a38bf3e22f port to inherit from std::exception
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
2024-11-04 13:25:14 -08:00

33 lines
614 B
C++

/*++
Copyright (c) 2012 Microsoft Corporation
Module Name:
goal_util.cpp
Abstract:
goal goodies.
Author:
Leonardo de Moura (leonardo) 2012-01-03.
Revision History:
--*/
#include "tactic/goal_util.h"
#include "tactic/goal.h"
struct has_term_ite_functor {
struct found : public std::exception {};
ast_manager & m;
has_term_ite_functor(ast_manager & _m):m(_m) {}
void operator()(var *) {}
void operator()(quantifier *) {}
void operator()(app * n) { if (m.is_term_ite(n)) throw found(); }
};
bool has_term_ite(goal const & g) {
return test<has_term_ite_functor>(g);
}