cprover
|
Class to hold a Java generic type parameter (also called type variable), e.g., T
in List<T>
.
More...
#include <java_types.h>
Public Types | |
typedef symbol_typet | type_variablet |
![]() | |
typedef std::vector< typet > | subtypest |
![]() | |
typedef std::vector< irept > | subt |
typedef std::map< irep_namet, irept > | named_subt |
Public Member Functions | |
java_generic_parametert (const irep_idt &_type_var_name, const symbol_typet &_bound) | |
const type_variablet & | type_variable () const |
type_variablet & | type_variable_ref () |
const irep_idt | get_name () const |
![]() | |
reference_typet (const typet &_subtype, std::size_t _width) | |
![]() | |
pointer_typet (const typet &_subtype, std::size_t width) | |
signedbv_typet | difference_type () const |
![]() | |
bitvector_typet (const irep_idt &_id) | |
bitvector_typet (const irep_idt &_id, const typet &_subtype) | |
bitvector_typet (const irep_idt &_id, const typet &_subtype, std::size_t width) | |
bitvector_typet (const irep_idt &_id, std::size_t width) | |
std::size_t | get_width () const |
void | set_width (std::size_t width) |
![]() | |
type_with_subtypet () | |
type_with_subtypet (const irep_idt &_id) | |
type_with_subtypet (const irep_idt &_id, const typet &_subtype) | |
![]() | |
typet () | |
typet (const irep_idt &_id) | |
typet (const irep_idt &_id, const typet &_subtype) | |
const typet & | subtype () const |
typet & | subtype () |
subtypest & | subtypes () |
const subtypest & | subtypes () const |
bool | has_subtypes () const |
bool | has_subtype () const |
void | remove_subtype () |
void | move_to_subtypes (typet &type) |
void | copy_to_subtypes (const typet &type) |
const source_locationt & | source_location () const |
source_locationt & | add_source_location () |
typet & | add_type (const irep_namet &name) |
const typet & | find_type (const irep_namet &name) const |
![]() | |
bool | is_nil () const |
bool | is_not_nil () const |
irept (const irep_idt &_id) | |
irept () | |
irept (const irept &irep) | |
irept (irept &&irep) | |
irept & | operator= (const irept &irep) |
irept & | operator= (irept &&irep) |
~irept () | |
const irep_idt & | id () const |
const std::string & | id_string () const |
void | id (const irep_idt &_data) |
const irept & | find (const irep_namet &name) const |
irept & | add (const irep_namet &name) |
irept & | add (const irep_namet &name, const irept &irep) |
const std::string & | get_string (const irep_namet &name) const |
const irep_idt & | get (const irep_namet &name) const |
bool | get_bool (const irep_namet &name) const |
signed int | get_int (const irep_namet &name) const |
unsigned int | get_unsigned_int (const irep_namet &name) const |
std::size_t | get_size_t (const irep_namet &name) const |
long long | get_long_long (const irep_namet &name) const |
void | set (const irep_namet &name, const irep_idt &value) |
void | set (const irep_namet &name, const irept &irep) |
void | set (const irep_namet &name, const long long value) |
void | remove (const irep_namet &name) |
void | move_to_sub (irept &irep) |
void | move_to_named_sub (const irep_namet &name, irept &irep) |
bool | operator== (const irept &other) const |
bool | operator!= (const irept &other) const |
void | swap (irept &irep) |
bool | operator< (const irept &other) const |
defines ordering on the internal representation More... | |
bool | ordering (const irept &other) const |
defines ordering on the internal representation More... | |
int | compare (const irept &i) const |
defines ordering on the internal representation More... | |
void | clear () |
void | make_nil () |
subt & | get_sub () |
const subt & | get_sub () const |
named_subt & | get_named_sub () |
const named_subt & | get_named_sub () const |
named_subt & | get_comments () |
const named_subt & | get_comments () const |
std::size_t | hash () const |
std::size_t | full_hash () const |
bool | full_eq (const irept &other) const |
std::string | pretty (unsigned indent=0, unsigned max_indent=0) const |
const dt & | read () const |
dt & | write () |
Private Types | |
typedef std::vector< type_variablet > | type_variablest |
Private Member Functions | |
const type_variablest & | type_variables () const |
type_variablest & | type_variables () |
Additional Inherited Members | |
![]() | |
void | detach () |
![]() | |
static bool | is_comment (const irep_namet &name) |
static void | remove_ref (dt *old_data) |
static void | nonrecursive_destructor (dt *old_data) |
Does the same as remove_ref, but using an explicit stack instead of recursion. More... | |
![]() | |
dt * | data |
![]() | |
static dt | empty_d |
Class to hold a Java generic type parameter (also called type variable), e.g., T
in List<T>
.
The bound can specify type requirements.
Definition at line 232 of file java_types.h.
|
private |
Definition at line 265 of file java_types.h.
Definition at line 235 of file java_types.h.
|
inline |
Definition at line 237 of file java_types.h.
References type_variables().
|
inline |
Definition at line 259 of file java_types.h.
References symbol_typet::get_identifier(), and type_variable().
Referenced by java_generic_symbol_typet::generic_type_index(), select_pointer_typet::get_recursively_instantiated_type(), generic_parameter_specialization_map_keyst::insert_pairs(), and select_pointer_typet::specialize_generics().
|
inline |
Definition at line 247 of file java_types.h.
References PRECONDITION, and type_variables().
Referenced by get_name(), and require_java_generic_type_argument_expectation().
|
inline |
Definition at line 253 of file java_types.h.
References PRECONDITION, and type_variables().
|
inlineprivate |
Definition at line 266 of file java_types.h.
References irept::find(), and irept::get_sub().
Referenced by java_generic_parametert(), type_variable(), and type_variable_ref().
|
inlineprivate |
Definition at line 271 of file java_types.h.
References irept::add(), and irept::get_sub().