cprover
|
Extract member of struct or union. More...
#include <std_expr.h>
Public Member Functions | |
member_exprt (const exprt &op) | |
member_exprt (const typet &_type) | |
member_exprt (const exprt &op, const irep_idt &component_name) | |
member_exprt (const exprt &op, const irep_idt &component_name, const typet &_type) | |
member_exprt () | |
irep_idt | get_component_name () const |
void | set_component_name (const irep_idt &component_name) |
std::size_t | get_component_number () const |
void | set_component_number (std::size_t component_number) |
const exprt & | struct_op () const |
exprt & | struct_op () |
const exprt & | compound () const |
exprt & | compound () |
![]() | |
exprt () | |
exprt (const irep_idt &_id) | |
exprt (const irep_idt &_id, const typet &_type) | |
typet & | type () |
const typet & | type () const |
bool | has_operands () const |
operandst & | operands () |
const operandst & | operands () const |
exprt & | op0 () |
exprt & | op1 () |
exprt & | op2 () |
exprt & | op3 () |
const exprt & | op0 () const |
const exprt & | op1 () const |
const exprt & | op2 () const |
const exprt & | op3 () const |
void | reserve_operands (operandst::size_type n) |
void | move_to_operands (exprt &expr) |
void | move_to_operands (exprt &e1, exprt &e2) |
void | move_to_operands (exprt &e1, exprt &e2, exprt &e3) |
void | copy_to_operands (const exprt &expr) |
void | copy_to_operands (const exprt &e1, const exprt &e2) |
void | copy_to_operands (const exprt &e1, const exprt &e2, const exprt &e3) |
void | make_typecast (const typet &_type) |
void | make_not () |
void | make_true () |
void | make_false () |
void | make_bool (bool value) |
void | negate () |
bool | sum (const exprt &expr) |
bool | mul (const exprt &expr) |
bool | subtract (const exprt &expr) |
bool | is_constant () const |
bool | is_true () const |
bool | is_false () const |
bool | is_zero () const |
bool | is_one () const |
bool | is_boolean () const |
const source_locationt & | find_source_location () const |
const source_locationt & | source_location () const |
source_locationt & | add_source_location () |
exprt & | add_expr (const irep_idt &name) |
const exprt & | find_expr (const irep_idt &name) const |
void | visit (class expr_visitort &visitor) |
void | visit (class const_expr_visitort &visitor) const |
![]() | |
bool | is_nil () const |
bool | is_not_nil () const |
irept (const irep_idt &_id) | |
irept () | |
irept (const irept &irep) | |
irept (irept &&irep) | |
irept & | operator= (const irept &irep) |
irept & | operator= (irept &&irep) |
~irept () | |
const irep_idt & | id () const |
const std::string & | id_string () const |
void | id (const irep_idt &_data) |
const irept & | find (const irep_namet &name) const |
irept & | add (const irep_namet &name) |
irept & | add (const irep_namet &name, const irept &irep) |
const std::string & | get_string (const irep_namet &name) const |
const irep_idt & | get (const irep_namet &name) const |
bool | get_bool (const irep_namet &name) const |
signed int | get_int (const irep_namet &name) const |
unsigned int | get_unsigned_int (const irep_namet &name) const |
std::size_t | get_size_t (const irep_namet &name) const |
long long | get_long_long (const irep_namet &name) const |
void | set (const irep_namet &name, const irep_idt &value) |
void | set (const irep_namet &name, const irept &irep) |
void | set (const irep_namet &name, const long long value) |
void | remove (const irep_namet &name) |
void | move_to_sub (irept &irep) |
void | move_to_named_sub (const irep_namet &name, irept &irep) |
bool | operator== (const irept &other) const |
bool | operator!= (const irept &other) const |
void | swap (irept &irep) |
bool | operator< (const irept &other) const |
defines ordering on the internal representation More... | |
bool | ordering (const irept &other) const |
defines ordering on the internal representation More... | |
int | compare (const irept &i) const |
defines ordering on the internal representation More... | |
void | clear () |
void | make_nil () |
subt & | get_sub () |
const subt & | get_sub () const |
named_subt & | get_named_sub () |
const named_subt & | get_named_sub () const |
named_subt & | get_comments () |
const named_subt & | get_comments () const |
std::size_t | hash () const |
std::size_t | full_hash () const |
bool | full_eq (const irept &other) const |
std::string | pretty (unsigned indent=0, unsigned max_indent=0) const |
const dt & | read () const |
dt & | write () |
Additional Inherited Members | |
![]() | |
typedef std::vector< exprt > | operandst |
![]() | |
typedef std::vector< irept > | subt |
typedef std::map< irep_namet, irept > | named_subt |
![]() | |
void | detach () |
![]() | |
static bool | is_comment (const irep_namet &name) |
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. More... | |
![]() | |
dt * | data |
![]() | |
static dt | empty_d |
Extract member of struct or union.
Definition at line 3214 of file std_expr.h.
|
inlineexplicit |
Definition at line 3217 of file std_expr.h.
References exprt::copy_to_operands().
|
inlineexplicit |
Definition at line 3222 of file std_expr.h.
References exprt::operands().
Definition at line 3227 of file std_expr.h.
References exprt::copy_to_operands(), and set_component_name().
|
inline |
Definition at line 3234 of file std_expr.h.
References exprt::copy_to_operands(), and set_component_name().
|
inline |
Definition at line 3244 of file std_expr.h.
References exprt::operands().
|
inline |
Definition at line 3281 of file std_expr.h.
References exprt::op0().
Referenced by ai_domain_baset::ai_simplify_lhs(), simplify_exprt::simplify_member(), and remove_const_function_pointerst::try_resolve_member().
|
inline |
Definition at line 3286 of file std_expr.h.
References exprt::op0().
|
inline |
Definition at line 3249 of file std_expr.h.
Referenced by path_symext::assign_rec(), string_abstractiont::build(), build_ssa_identifier_rec(), dplib_convt::convert_address_of_rec(), cvc_convt::convert_address_of_rec(), bv_pointerst::convert_address_of_rec(), smt1_convt::convert_address_of_rec(), smt2_convt::convert_address_of_rec(), expr2ct::convert_member(), boolbvt::convert_member(), smt1_convt::convert_with(), interpretert::evaluate_address(), smt1_convt::get(), smt2_convt::get(), remove_const_function_pointerst::get_component_value(), rw_range_sett::get_objects_member(), get_objects_rec(), boolbvt::literal(), member_offset_expr(), dereferencet::read_object(), path_symex_statet::read_symbol_member_index(), goto_symex_statet::rename_address(), rewrite_assignment(), java_bytecode_convert_methodt::save_stack_entries(), simplify_exprt::simplify_address_of_arg(), simplify_exprt::simplify_member(), goto_symext::symex_assign_struct_member(), and java_bytecode_typecheckt::typecheck_expr_member().
|
inline |
Definition at line 3259 of file std_expr.h.
References irept::get_size_t().
Referenced by expr2ct::convert_member().
|
inline |
Definition at line 3254 of file std_expr.h.
Referenced by value_sett::assign(), goto_symext::initialize_auto_object(), value_sett::make_member(), member_exprt(), and pointer_logict::object_rec().
|
inline |
Definition at line 3264 of file std_expr.h.
|
inline |
Definition at line 3270 of file std_expr.h.
References exprt::op0().
Referenced by arrayst::add_array_constraints(), uninitialized_domaint::assign(), path_symext::assign_rec(), string_abstractiont::build(), build_full_lhs_rec(), build_object_descriptor_rec(), build_ssa_identifier_rec(), goto_checkt::check_rec(), arrayst::collect_arrays(), smt1_convt::convert_address_of_rec(), smt2_convt::convert_address_of_rec(), boolbvt::convert_member(), smt1_convt::convert_with(), goto_symext::dereference_rec_address_of(), smt1_convt::get(), smt2_convt::get(), rw_range_sett::get_objects_address_of(), rw_range_sett::get_objects_member(), get_objects_rec(), have_to_rewrite_union(), goto_symext::initialize_auto_object(), path_symex_statet::instantiate_rec_address(), goto_checkt::invalidate(), constant_propagator_domaint::valuest::is_constant_address_of(), path_symex_statet::is_symbol_member_index(), member_offset_expr(), path_symext::propagate(), dereferencet::read_object(), path_symex_statet::read_symbol_member_index(), goto_symex_statet::rename_address(), rewrite_assignment(), rewrite_union(), and java_bytecode_typecheckt::typecheck_expr_member().
|
inline |
Definition at line 3276 of file std_expr.h.
References exprt::op0().