20 for(std::vector<size_t>::const_iterator it=
map.begin();
46 map.reserve(new_size);
48 for(std::size_t i=
map.size(); i<new_size; ++i)
54 if(src.
id() == ID_c_enum_tag)
57 src.
id() == ID_unsignedbv || src.
id() == ID_signedbv ||
58 src.
id() == ID_fixedbv || src.
id() == ID_floatbv || src.
id() == ID_c_enum ||
59 src.
id() == ID_c_bit_field || src.
id() == ID_bv)
66 const std::size_t base =
map.size();
68 for(
size_t bit=0; bit<bits_int; bit++)
70 map.push_back(base+bits_int-1-bit);
73 else if(src.
id()==ID_struct)
83 else if(src.
id() == ID_struct_tag)
87 else if(src.
id()==ID_array)
102 else if(src.
id()==ID_vector)
124 map.reserve(new_size);
126 for(std::size_t i=
map.size(); i<new_size; ++i)
const c_enum_tag_typet & to_c_enum_tag_type(const typet &type)
Cast a typet to a c_enum_tag_typet.
const exprt & size() const
const typet & element_type() const
The type of the elements of the array.
virtual void build_big_endian(const typet &type)
virtual void build_little_endian(const typet &type)
void build(const typet &type, bool little_endian)
std::vector< size_t > map
void output(std::ostream &) const
const irep_idt & id() const
const union_typet & follow_tag(const union_tag_typet &) const
Follow type tag of union type.
Structure type, corresponds to C style structs.
const componentst & components() const
The type of an expression, extends irept.
const constant_exprt & size() const
const typet & element_type() const
The type of the elements of the vector.
std::optional< mp_integer > pointer_offset_bits(const typet &type, const namespacet &ns)
#define CHECK_RETURN(CONDITION)
const vector_typet & to_vector_type(const typet &type)
Cast a typet to a vector_typet.
const struct_typet & to_struct_type(const typet &type)
Cast a typet to a struct_typet.
const struct_tag_typet & to_struct_tag_type(const typet &type)
Cast a typet to a struct_tag_typet.
const array_typet & to_array_type(const typet &type)
Cast a typet to an array_typet.