13 const typet &pointer_subtype_struct)
22 pointer_subtype_struct.
get(ID_name));
44 const std::vector<java_generic_parametert> &generic_parameters =
49 type_args.size() == generic_parameters.size(),
50 "All generic parameters of the pointer type need to be specified");
67 const typet &symbol_struct)
75 struct_tag_type.
get(ID_identifier) == symbol_struct.
get(ID_name));
97 const std::vector<java_generic_parametert> &generic_parameters =
102 type_args.size() == generic_parameters.size(),
103 "All generic parameters of the superclass need to be concretized");
pointer_typet pointer_type(const typet &subtype)
std::optional< std::size_t > container_id
Key of the container to pop on destruction.
generic_parameter_specialization_mapt & generic_parameter_specialization_map
Generic parameter specialization map to modify.
void insert(const pointer_typet &pointer_type, const typet &pointer_subtype_struct)
Author: Diffblue Ltd.
std::size_t insert(const std::vector< java_generic_parametert > ¶meters, std::vector< reference_typet > types)
Insert a specialization for each type parameters of a container.
const irep_idt & get(const irep_idt &name) const
Class to hold type with generic type arguments, for example java.util.List in either a reference of t...
const generic_typest & generic_types() const
Reference that points to a java_generic_struct_tag_typet.
const generic_type_argumentst & generic_type_arguments() const
java_generic_struct_tag_typet::generic_typest generic_type_argumentst
The pointer type These are both 'bitvector_typet' (they have a width) and 'type_with_subtypet' (they ...
const typet & base_type() const
The type of the data what we point to.
A struct tag type, i.e., struct_typet with an identifier.
The type of an expression, extends irept.
std::vector< java_generic_parametert > get_all_generic_parameters(const typet &type)
const java_class_typet & to_java_class_type(const typet &type)
bool is_java_generic_type(const typet &type)
bool is_java_generic_struct_tag_type(const typet &type)
bool is_java_generic_class_type(const typet &type)
bool is_java_implicitly_generic_class_type(const typet &type)
const java_generic_typet & to_java_generic_type(const typet &type)
const java_generic_struct_tag_typet & to_java_generic_struct_tag_type(const typet &type)
#define PRECONDITION(CONDITION)