32 os <<
' ' <<
format(c.type()) <<
' ' << c.get_name();
52 os <<
' ' <<
format(c.type()) <<
' ' << c.get_name();
63 const auto &
id = type.
id();
67 else if(
id == ID_array)
71 return os <<
format(t.element_type()) <<
'[' <<
format(t.size()) <<
']';
73 return os <<
format(t.element_type()) <<
"[]";
75 else if(
id == ID_struct)
77 else if(
id == ID_union)
79 else if(
id == ID_union_tag)
81 else if(
id == ID_struct_tag)
83 else if(
id == ID_c_enum_tag)
85 else if(
id == ID_signedbv)
87 else if(
id == ID_unsignedbv)
91 else if(
id == ID_floatbv)
93 else if(
id == ID_c_bool)
95 else if(
id == ID_bool)
96 return os <<
"\xf0\x9d\x94\xb9";
97 else if(
id == ID_integer)
98 return os <<
"\xe2\x84\xa4";
99 else if(
id == ID_natural)
100 return os <<
"\xe2\x84\x95";
101 else if(
id == ID_range)
104 return os <<
"{ " << range_type.get_from() <<
", ..., "
105 << range_type.get_to() <<
" }";
107 else if(
id == ID_rational)
108 return os <<
"\xe2\x84\x9a";
109 else if(
id == ID_mathematical_function)
113 for(
const auto &domain : mathematical_function.domain())
122 return os <<
format(mathematical_function.codomain());
const floatbv_typet & to_floatbv_type(const typet &type)
Cast a typet to a floatbv_typet.
const signedbv_typet & to_signedbv_type(const typet &type)
Cast a typet to a signedbv_typet.
const bitvector_typet & to_bitvector_type(const typet &type)
Cast a typet to a bitvector_typet.
const unsignedbv_typet & to_unsignedbv_type(const typet &type)
Cast a typet to an unsignedbv_typet.
const union_tag_typet & to_union_tag_type(const typet &type)
Cast a typet to a union_tag_typet.
const union_typet & to_union_type(const typet &type)
Cast a typet to a union_typet.
const c_enum_tag_typet & to_c_enum_tag_type(const typet &type)
Cast a typet to a c_enum_tag_typet.
const c_bool_typet & to_c_bool_type(const typet &type)
Cast a typet to a c_bool_typet.
std::size_t get_width() const
const irep_idt & id() const
Structure type, corresponds to C style structs.
const componentst & components() const
const irep_idt & get_identifier() const
The type of an expression, extends irept.
const mathematical_function_typet & to_mathematical_function_type(const typet &type)
Cast a typet to a mathematical_function_typet.
API to expression classes for Pointers.
const pointer_typet & to_pointer_type(const typet &type)
Cast a typet to a pointer_typet.
const range_typet & to_range_type(const typet &type)
Cast a typet to a range_typet.
const struct_typet & to_struct_type(const typet &type)
Cast a typet to a struct_typet.
const array_typet & to_array_type(const typet &type)
Cast a typet to an array_typet.
const struct_tag_typet & to_struct_tag_type(const typet &type)
Cast a typet to a struct_tag_typet.