CBMC
|
Class to hold a class with generics, extends the java class type with a vector of java generic type parameters (also called type variables). More...
#include <java_types.h>
Public Member Functions | |
java_generic_class_typet () | |
const generic_typest & | generic_types () const |
generic_typest & | generic_types () |
Public Member Functions inherited from java_class_typet | |
const componentst & | components () const |
componentst & | components () |
const componentt & | get_component (const irep_idt &component_name) const |
const methodst & | methods () const |
methodst & | methods () |
const static_memberst & | static_members () const |
static_memberst & | static_members () |
const irep_idt & | get_access () const |
void | set_access (const irep_idt &access) |
bool | get_is_inner_class () const |
void | set_is_inner_class (const bool &is_inner_class) |
const irep_idt & | get_outer_class () const |
void | set_outer_class (const irep_idt &outer_class) |
const irep_idt & | get_super_class () const |
void | set_super_class (const irep_idt &super_class) |
bool | get_is_static_class () const |
void | set_is_static_class (const bool &is_static_class) |
bool | get_is_anonymous_class () const |
void | set_is_anonymous_class (const bool &is_anonymous_class) |
bool | get_final () const |
void | set_final (bool is_final) |
void | set_is_stub (bool is_stub) |
bool | get_is_stub () const |
bool | get_is_enumeration () const |
is class an enumeration? More... | |
void | set_is_enumeration (const bool is_enumeration) |
marks class as an enumeration More... | |
bool | get_abstract () const |
is class abstract? More... | |
void | set_abstract (bool abstract) |
marks class abstract More... | |
bool | get_synthetic () const |
is class synthetic? More... | |
void | set_synthetic (bool synthetic) |
marks class synthetic More... | |
bool | get_is_annotation () const |
is class an annotation? More... | |
void | set_is_annotation (bool is_annotation) |
marks class an annotation More... | |
bool | get_interface () const |
is class an interface? More... | |
void | set_interface (bool interface) |
marks class an interface More... | |
const java_lambda_method_handlest & | lambda_method_handles () const |
java_lambda_method_handlest & | lambda_method_handles () |
void | add_lambda_method_handle (const class_method_descriptor_exprt &method_descriptor, method_handle_kindt handle_kind) |
void | add_unknown_lambda_method_handle () |
const std::vector< java_annotationt > & | get_annotations () const |
std::vector< java_annotationt > & | get_annotations () |
const irep_idt & | get_name () const |
Get the name of the struct, which can be used to look up its symbol in the symbol table. More... | |
void | set_name (const irep_idt &name) |
Set the name of the struct, which can be used to look up its symbol in the symbol table. More... | |
const irep_idt & | get_inner_name () const |
Get the name of a java inner class. More... | |
void | set_inner_name (const irep_idt &name) |
Set the name of a java inner class. More... | |
Public Member Functions inherited from class_typet | |
class_typet () | |
const methodst & | methods () const |
methodst & | methods () |
const static_memberst & | static_members () const |
static_memberst & | static_members () |
bool | is_abstract () const |
Public Member Functions inherited from struct_typet | |
struct_typet () | |
struct_typet (componentst _components) | |
bool | is_prefix_of (const struct_typet &other) const |
Returns true if the struct is a prefix of other, i.e., if this struct has n components then the component types and names of this struct must match the first n components of other struct. More... | |
bool | is_class () const |
A struct may be a class, where members may have access restrictions. More... | |
const basest & | bases () const |
Get the collection of base classes/structs. More... | |
basest & | bases () |
Get the collection of base classes/structs. More... | |
void | add_base (const struct_tag_typet &base) |
Add a base class/struct. More... | |
std::optional< baset > | get_base (const irep_idt &id) const |
Return the base with the given name, if exists. More... | |
bool | has_base (const irep_idt &id) const |
Test whether id is a base class/struct. More... | |
Public Member Functions inherited from struct_union_typet | |
struct_union_typet (const irep_idt &_id) | |
struct_union_typet (const irep_idt &_id, componentst _components) | |
const componentst & | components () const |
componentst & | components () |
bool | has_component (const irep_idt &component_name) const |
const componentt & | get_component (const irep_idt &component_name) const |
Get the reference to a component with given name. More... | |
std::size_t | component_number (const irep_idt &component_name) const |
Return the sequence number of the component with given name. More... | |
const typet & | component_type (const irep_idt &component_name) const |
irep_idt | get_tag () const |
void | set_tag (const irep_idt &tag) |
bool | is_class () const |
A struct may be a class, where members may have access restrictions. More... | |
irep_idt | default_access () const |
Return the access specification for members where access has not been modified. More... | |
bool | is_incomplete () const |
A struct/union may be incomplete. More... | |
void | make_incomplete () |
A struct/union may be incomplete. More... | |
Public Member Functions inherited from typet | |
typet () | |
typet (const irep_idt &_id) | |
typet (irep_idt _id, typet _subtype) | |
typet & | add_subtype () |
bool | has_subtypes () const |
bool | has_subtype () const |
void | remove_subtype () |
const source_locationt & | source_location () const |
source_locationt & | add_source_location () |
typet && | with_source_location (source_locationt location) && |
This is a 'fluent style' method for creating a new type with an added-on source location. More... | |
typet & | with_source_location (source_locationt location) & |
This is a 'fluent style' method for adding a source location. More... | |
typet && | with_source_location (const typet &type) && |
This is a 'fluent style' method for creating a new type with an added-on source location. More... | |
typet & | with_source_location (const typet &type) & |
This is a 'fluent style' method for adding a source location. More... | |
typet & | add_type (const irep_idt &name) |
const typet & | find_type (const irep_idt &name) const |
Public Member Functions inherited from irept | |
bool | is_nil () const |
bool | is_not_nil () const |
irept (const irep_idt &_id) | |
irept (const irep_idt &_id, const named_subt &_named_sub, const subt &_sub) | |
irept ()=default | |
const irep_idt & | id () const |
const std::string & | id_string () const |
void | id (const irep_idt &_data) |
const irept & | find (const irep_idt &name) const |
irept & | add (const irep_idt &name) |
irept & | add (const irep_idt &name, irept irep) |
const std::string & | get_string (const irep_idt &name) const |
const irep_idt & | get (const irep_idt &name) const |
bool | get_bool (const irep_idt &name) const |
signed int | get_int (const irep_idt &name) const |
std::size_t | get_size_t (const irep_idt &name) const |
long long | get_long_long (const irep_idt &name) const |
void | set (const irep_idt &name, const irep_idt &value) |
void | set (const irep_idt &name, irept irep) |
void | set (const irep_idt &name, const long long value) |
void | set_size_t (const irep_idt &name, const std::size_t value) |
void | remove (const irep_idt &name) |
void | move_to_sub (irept &irep) |
void | move_to_named_sub (const irep_idt &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 comments are ignored 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 |
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 |
Public Member Functions inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
sharing_treet (irep_idt _id) | |
sharing_treet (irep_idt _id, named_subt _named_sub, subt _sub) | |
sharing_treet () | |
sharing_treet (const sharing_treet &irep) | |
sharing_treet (sharing_treet &&irep) | |
sharing_treet & | operator= (const sharing_treet &irep) |
sharing_treet & | operator= (sharing_treet &&irep) |
~sharing_treet () | |
const dt & | read () const |
dt & | write () |
Additional Inherited Members | |
Static Public Member Functions inherited from typet | |
static void | check (const typet &, const validation_modet=validation_modet::INVARIANT) |
Check that the type is well-formed (shallow checks only, i.e., subtypes are not checked) More... | |
static void | validate (const typet &type, const namespacet &, const validation_modet vm=validation_modet::INVARIANT) |
Check that the type is well-formed, assuming that its subtypes have already been checked for well-formedness. More... | |
static void | validate_full (const typet &type, const namespacet &ns, const validation_modet vm=validation_modet::INVARIANT) |
Check that the type is well-formed (full check, including checks of subtypes) More... | |
Static Public Member Functions inherited from irept | |
static bool | is_comment (const irep_idt &name) |
static std::size_t | number_of_non_comments (const named_subt &) |
count the number of named_sub elements that are not comments More... | |
Protected Member Functions inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
void | detach () |
Static Protected Member Functions inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
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... | |
Protected Attributes inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
dt * | data |
Static Protected Attributes inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > > | |
static dt | empty_d |
Class to hold a class with generics, extends the java class type with a vector of java generic type parameters (also called type variables).
For example, a class definition class MyGenericClass<T>
.
Definition at line 971 of file java_types.h.
typedef std::vector<java_generic_parametert> java_generic_class_typet::generic_typest |
Definition at line 974 of file java_types.h.
|
inline |
Definition at line 976 of file java_types.h.
|
inline |
Definition at line 986 of file java_types.h.
|
inline |
Definition at line 981 of file java_types.h.