17 #include <testing-utils/catch.hpp> 28 REQUIRE(expr.
id()==ID_index);
30 REQUIRE(index_expr.index().id()==ID_constant);
32 numeric_cast_v<mp_integer>(index_expr.index());
33 REQUIRE(index_integer_value==expected_index);
43 REQUIRE(expr.
id()==ID_index);
45 REQUIRE(index_expr.index().id()==ID_nil);
58 REQUIRE(expr.
id()==ID_member);
60 REQUIRE(member_expr.get_component_name()==component_identifier);
82 REQUIRE(expr.
id() == ID_symbol);
91 REQUIRE(expr.
id() == ID_typecast);
101 const irep_idt &side_effect_statement)
103 REQUIRE(expr.
id() == ID_side_effect);
105 REQUIRE(side_effect_expr.get_statement() == side_effect_statement);
106 return side_effect_expr;
Semantic type conversion.
const irep_idt & get_identifier() const
side_effect_exprt & to_side_effect_expr(exprt &expr)
Extract member of struct or union.
const irep_idt & id() const
Helper functions for requiring specific expressions If the expression is of the wrong type...
member_exprt require_member(const exprt &expr, const irep_idt &component_identifier)
Verify a given exprt is an member_exprt with a component name equal to the component_identifier.
const member_exprt & to_member_expr(const exprt &expr)
Cast an exprt to a member_exprt.
const symbol_exprt & to_symbol_expr(const exprt &expr)
Cast an exprt to a symbol_exprt.
symbol_exprt require_symbol(const exprt &expr, const irep_idt &symbol_name)
Verify a given exprt is an symbol_exprt with a identifier name equal to the symbol_name.
dstringt has one field, an unsigned integer no which is an index into a static table of strings...
side_effect_exprt require_side_effect_expr(const exprt &expr, const irep_idt &side_effect_statement)
Verify a given exprt is a side_effect_exprt with appropriate statement.
index_exprt require_top_index(const exprt &expr)
Verify a given exprt is an index_exprt with a nil value as its index.
Base class for all expressions.
const typecast_exprt & to_typecast_expr(const exprt &expr)
Cast an exprt to a typecast_exprt.
Expression to hold a symbol (variable)
index_exprt require_index(const exprt &expr, int expected_index)
Verify a given exprt is an index_exprt with a a constant value equal to the expected value...
An expression containing a side effect.
typecast_exprt require_typecast(const exprt &expr)
Verify a given exprt is a typecast_expr.
const index_exprt & to_index_expr(const exprt &expr)
Cast an exprt to an index_exprt.