Go to the documentation of this file.
15 #ifndef CPROVER_JAVA_TESTING_UTILS_REQUIRE_TYPE_H
16 #define CPROVER_JAVA_TESTING_UTILS_REQUIRE_TYPE_H
57 typedef std::initializer_list<expected_type_argumentt>
83 const typet &class_type,
84 const std::initializer_list<irep_idt> &type_variables);
90 const typet &class_type,
91 const std::initializer_list<irep_idt> &type_parameters);
97 const typet &class_type,
98 const std::initializer_list<irep_idt> &implicit_type_variables);
105 const typet &class_type,
106 const std::initializer_list<irep_idt> &implicit_type_variables);
115 const std::string &identifier);
119 const std::string &identifier,
127 const std::vector<std::string> &expected_identifiers);
130 #endif // CPROVER_JAVA_TESTING_UTILS_REQUIRE_TYPE_H
dstringt has one field, an unsigned integer no which is an index into a static table of strings.
code_typet require_code(const typet &type)
Checks a type is a code_type (i.e.
Class to hold type with generic type arguments, for example java.util.List in either a reference of t...
java_generic_struct_tag_typet require_java_generic_struct_tag_type(const typet &type, const std::string &identifier)
Verify a given type is a java generic symbol type.
The type of an expression, extends irept.
std::initializer_list< expected_type_argumentt > expected_type_argumentst
java_implicitly_generic_class_typet require_complete_java_implicitly_generic_class(const typet &class_type)
Verify that a class is a complete, valid java implicitly generic class.
java_class_typet::java_lambda_method_handlest java_lambda_method_handlest
Class to hold a Java generic type parameter (also called type variable), e.g., T in List<T>.
A struct tag type, i.e., struct_typet with an identifier.
const typet & require_java_non_generic_type(const typet &type, const optionalt< struct_tag_typet > &expect_subtype)
Test a type to ensure it is not a java generics type.
java_generic_typet require_java_generic_type(const typet &type)
Verify a given type is a java_generic_type.
java_implicitly_generic_class_typet require_java_implicitly_generic_class(const typet &class_type)
Verify that a class is a valid java implicitly generic class.
java_lambda_method_handlest require_lambda_method_handles(const java_class_typet &class_type, const std::vector< std::string > &expected_identifiers)
Verify that the lambda method handles of a class match the given expectation.
class_typet require_complete_class(const typet &class_type)
Checks that the given type is a complete class.
java_generic_parametert require_java_generic_parameter(const typet &type)
Verify a given type is a java_generic_parameter, e.g., T
java_method_typet require_java_method(const typet &type)
Checks a type is a java_method_typet (i.e.
Type to hold a Java class that is implicitly generic, e.g., an inner class of a generic outer class o...
java_class_typet require_complete_java_non_generic_class(const typet &class_type)
Verify that a class is a complete, valid nongeneric java class.
java_generic_class_typet require_java_generic_class(const typet &class_type)
Verify that a class is a valid java generic class.
nonstd::optional< T > optionalt
irept::subt java_lambda_method_handlest
Structure type, corresponds to C style structs.
class_typet require_incomplete_class(const typet &class_type)
Checks that the given type is an incomplete class.
code_typet::parametert require_parameter(const code_typet &function_type, const irep_idt ¶m_name)
Verify that a function has a parameter of a specific name.
java_class_typet require_java_non_generic_class(const typet &class_type)
Verify that a class is a valid nongeneric java class.
struct_typet::componentt require_component(const struct_typet &struct_type, const irep_idt &component_name)
Checks a struct like type has a component with a specific name.
Type for a generic symbol, extends struct_tag_typet with a vector of java generic types.
pointer_typet require_pointer(const typet &type, const optionalt< typet > &subtype)
Checks a type is a pointer type optionally with a specific subtype.
Class to hold a class with generics, extends the java class type with a vector of java generic type p...
The pointer type These are both 'bitvector_typet' (they have a width) and 'type_with_subtypet' (they ...
const struct_tag_typet & require_struct_tag(const typet &type, const irep_idt &identifier="")
Verify a given type is a symbol type, optionally with a specific identifier.
java_generic_class_typet require_complete_java_generic_class(const typet &class_type)
Verify that a class is a complete, valid java generic class.