|
CBMC
|
A base class for variable bindings (quantifiers, let, lambda) More...
#include <std_expr.h>
Inheritance diagram for binding_exprt:
Collaboration diagram for binding_exprt:Public Types | |
| using | variablest = std::vector< symbol_exprt > |
Public Types inherited from exprt | |
| typedef std::vector< exprt > | operandst |
Public Types inherited from irept | |
| using | baset = tree_implementationt |
Public Types inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
| using | dt = tree_nodet< irept, forward_list_as_mapt< irep_idt, irept >, true > |
| using | subt = typename dt::subt |
| using | named_subt = typename dt::named_subt |
| using | tree_implementationt = sharing_treet |
| Used to refer to this class from derived classes. | |
Additional Inherited Members | |
Static Public Member Functions inherited from binary_exprt | |
| static void | check (const exprt &expr, const validation_modet vm=validation_modet::INVARIANT) |
| static void | validate (const exprt &expr, const namespacet &, const validation_modet vm=validation_modet::INVARIANT) |
Static Public Member Functions inherited from exprt | |
| static void | check (const exprt &, const validation_modet) |
| Check that the expression is well-formed (shallow checks only, i.e., subexpressions and its type are not checked). | |
| static void | validate (const exprt &expr, const namespacet &, const validation_modet vm=validation_modet::INVARIANT) |
| Check that the expression is well-formed, assuming that its subexpressions and type have all ready been checked for well-formedness. | |
| static void | validate_full (const exprt &expr, const namespacet &ns, const validation_modet vm=validation_modet::INVARIANT) |
| Check that the expression is well-formed (full check, including checks of all subexpressions and the type) | |
Static Public Member Functions inherited from irept | |
| static bool | is_comment (const irep_idt &name) |
| static std::size_t | number_of_non_comments (const named_subt &) |
| count the number of named_sub elements that are not comments | |
Protected Member Functions inherited from expr_protectedt | |
| expr_protectedt (irep_idt _id, typet _type) | |
| expr_protectedt (irep_idt _id, typet _type, operandst _operands) | |
| exprt & | op0 () |
| const exprt & | op0 () const |
| exprt & | op1 () |
| const exprt & | op1 () const |
| exprt & | op2 () |
| const exprt & | op2 () const |
| exprt & | op3 () |
| const exprt & | op3 () const |
Protected Member Functions inherited from exprt | |
| exprt & | op0 () |
| exprt & | op1 () |
| exprt & | op2 () |
| exprt & | op3 () |
| const exprt & | op0 () const |
| const exprt & | op1 () const |
| const exprt & | op2 () const |
| const exprt & | op3 () const |
| exprt & | add_expr (const irep_idt &name) |
| const exprt & | find_expr (const irep_idt &name) const |
Protected Member Functions inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
| void | detach () |
Static Protected Member Functions inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
| static void | remove_ref (dt *old_data) |
| static void | nonrecursive_destructor (dt *old_data) |
| Does the same as remove_ref, but using an explicit stack instead of recursion. | |
Protected Attributes inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
| dt * | data |
Static Protected Attributes inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
| static dt | empty_d |
A base class for variable bindings (quantifiers, let, lambda)
Definition at line 3280 of file std_expr.h.
| using binding_exprt::variablest = std::vector<symbol_exprt> |
Definition at line 3283 of file std_expr.h.
|
inline |
construct the binding expression
Definition at line 3286 of file std_expr.h.
| exprt binding_exprt::instantiate | ( | const exprt::operandst & | values | ) | const |
substitute free occurrences of the variables in where() by the given values
Definition at line 419 of file std_expr.cpp.
| exprt binding_exprt::instantiate | ( | const variablest & | new_variables | ) | const |
substitute free occurrences of the variables in where() by a set of different symbols
Definition at line 449 of file std_expr.cpp.
|
inline |
Definition at line 3302 of file std_expr.h.
|
inline |
Definition at line 3307 of file std_expr.h.
|
inline |
Definition at line 3312 of file std_expr.h.
Definition at line 3317 of file std_expr.h.