|
ESBMC
Efficient SMT-based Context-Bounded Model Checker
|
#include <cstdint>#include <limits>#include <memory>#include <util/arith/fixedbv.h>#include <util/base/i2string.h>#include <util/arith/ieee_float.h>#include <irep2/irep2_type.h>#include <irep2/irep2_expr.h>#include <irep2/irep2_utils.h>#include <irep2/irep2_dispatch.h>#include <util/message/message.h>#include <util/message/format.h>#include <util/irep/migrate.h>#include <irep2/type_kinds.inc>Macros | |
| #define | IREP2_TYPE(kind, pretty) |
| #define | IREP2_TYPE(kind, _) |
| #define | IREP2_TYPE(kind, _) |
| #define | IREP2_TYPE(kind, _) |
| #define | IREP2_TYPE(kind, _) |
| #define | IREP2_TYPE(kind, _) |
| #define | IREP2_TYPE(kind, _) |
| #define | IREP2_TYPE(kind, _) |
Functions | |
| std::string | get_type_id (const type2t &type) |
| Fetch identifying name for a type. | |
| void | irep2_bad_type_cast (unsigned actual, unsigned expected, const char *target) |
| void | irep2_bad_family_cast (unsigned actual, const char *accessor) |
| std::vector< type2tc > | struct_union_members (const type2tc &t) |
| std::vector< type2tc > & | struct_union_members (type2tc &t) |
| Mutating reference to a struct/union's members vector. | |
| std::vector< irep_idt > | struct_union_member_names (const type2tc &t) |
| irep_idt | struct_union_name (const type2tc &t) |
| bool | struct_union_packed (const type2tc &t) |
| std::optional< unsigned int > | struct_union_get_component_number (const type2tc &t, const irep_idt &comp) |
Index of comp in struct/union/complex member_names, or nullopt if it is missing or duplicated (the latter is malformed IR). | |
Variables | |
| static const char * | type_names [] |
| #define IREP2_TYPE | ( | kind, | |
| _ ) |
| #define IREP2_TYPE | ( | kind, | |
| _ ) |
| #define IREP2_TYPE | ( | kind, | |
| _ ) |
| #define IREP2_TYPE | ( | kind, | |
| _ ) |
| #define IREP2_TYPE | ( | kind, | |
| _ ) |
| #define IREP2_TYPE | ( | kind, | |
| _ ) |
| #define IREP2_TYPE | ( | kind, | |
| _ ) |
| #define IREP2_TYPE | ( | kind, | |
| pretty ) |
| std::string get_type_id | ( | const type2t & | type | ) |
Fetch identifying name for a type.
| type | Type to fetch identifier for |
| void irep2_bad_family_cast | ( | unsigned | actual, |
| const char * | accessor ) |
| void irep2_bad_type_cast | ( | unsigned | actual, |
| unsigned | expected, | ||
| const char * | target ) |
| std::optional< unsigned int > struct_union_get_component_number | ( | const type2tc & | t, |
| const irep_idt & | comp ) |
Index of comp in struct/union/complex member_names, or nullopt if it is missing or duplicated (the latter is malformed IR).
Mutating reference to a struct/union's members vector.
Unlike the read-only overload this does NOT synthesise a view for complex_type (which has no members vector), so it is restricted to struct_id and union_id; passing anything else aborts. Detaches t first via the non-const to_*_type accessor, so the returned reference is safe to mutate.
|
static |