cprover
|
#include <java_bytecode_parse_tree.h>
Classes | |
class | lambda_method_handlet |
Public Types | |
enum | method_handle_typet { method_handle_typet::LAMBDA_METHOD_HANDLE, method_handle_typet::UNKNOWN_HANDLE } |
typedef std::vector< u2 > | u2_valuest |
typedef std::map< std::pair< irep_idt, size_t >, lambda_method_handlet > | lambda_method_handle_mapt |
typedef std::list< irep_idt > | implementst |
typedef std::list< fieldt > | fieldst |
typedef std::list< methodt > | methodst |
Public Member Functions | |
classt ()=default | |
classt (const classt &)=delete | |
classt & | operator= (const classt &)=delete |
classt (classt &&)=default | |
classt & | operator= (classt &&)=default |
fieldt & | add_field () |
methodt & | add_method () |
void | add_method_handle (size_t bootstrap_index, lambda_method_handlet handle) |
const lambda_method_handlet & | get_method_handle (size_t bootstrap_index) const |
void | output (std::ostream &out) const |
Public Attributes | |
irep_idt | name |
irep_idt | extends |
bool | is_abstract =false |
bool | is_enum =false |
bool | is_public =false |
bool | is_protected =false |
bool | is_private =false |
bool | is_final = false |
bool | is_interface = false |
bool | is_synthetic = false |
bool | is_annotation = false |
bool | attribute_bootstrapmethods_read = false |
size_t | enum_elements =0 |
lambda_method_handle_mapt | lambda_method_handle_map |
implementst | implements |
optionalt< std::string > | signature |
fieldst | fields |
methodst | methods |
annotationst | annotations |
Definition at line 193 of file java_bytecode_parse_tree.h.
typedef std::list<fieldt> java_bytecode_parse_treet::classt::fieldst |
Definition at line 263 of file java_bytecode_parse_tree.h.
typedef std::list<irep_idt> java_bytecode_parse_treet::classt::implementst |
Definition at line 260 of file java_bytecode_parse_tree.h.
typedef std::map<std::pair<irep_idt, size_t>, lambda_method_handlet> java_bytecode_parse_treet::classt::lambda_method_handle_mapt |
Definition at line 257 of file java_bytecode_parse_tree.h.
typedef std::list<methodt> java_bytecode_parse_treet::classt::methodst |
Definition at line 264 of file java_bytecode_parse_tree.h.
typedef std::vector<u2> java_bytecode_parse_treet::classt::u2_valuest |
Definition at line 224 of file java_bytecode_parse_tree.h.
Enumerator | |
---|---|
LAMBDA_METHOD_HANDLE | |
UNKNOWN_HANDLE |
Definition at line 218 of file java_bytecode_parse_tree.h.
|
default |
|
delete |
|
default |
|
inline |
Definition at line 269 of file java_bytecode_parse_tree.h.
References fields.
Referenced by java_bytecode_parsert::rfields().
|
inline |
Definition at line 275 of file java_bytecode_parse_tree.h.
References methods.
Referenced by java_bytecode_parsert::rmethod().
|
inline |
Definition at line 281 of file java_bytecode_parse_tree.h.
References lambda_method_handle_map, and name.
Referenced by java_bytecode_parsert::read_bootstrapmethods_entry(), and java_bytecode_parsert::store_unknown_method_handle().
|
inline |
Definition at line 286 of file java_bytecode_parse_tree.h.
References lambda_method_handle_map, and name.
void java_bytecode_parse_treet::classt::output | ( | std::ostream & | out | ) | const |
Definition at line 32 of file java_bytecode_parse_tree.cpp.
References annotations, dstringt::empty(), extends, fields, methods, and name.
Referenced by java_bytecode_parse_treet::output().
annotationst java_bytecode_parse_treet::classt::annotations |
Definition at line 267 of file java_bytecode_parse_tree.h.
Referenced by is_overlay_class(), output(), and java_bytecode_parsert::rclass_attribute().
bool java_bytecode_parse_treet::classt::attribute_bootstrapmethods_read = false |
Definition at line 215 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_parsert::rclass_attribute().
size_t java_bytecode_parse_treet::classt::enum_elements =0 |
Definition at line 216 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
irep_idt java_bytecode_parse_treet::classt::extends |
Definition at line 207 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), output(), and java_bytecode_parsert::rClassFile().
fieldst java_bytecode_parse_treet::classt::fields |
Definition at line 265 of file java_bytecode_parse_tree.h.
Referenced by add_field(), java_bytecode_parsert::get_class_refs(), output(), and java_bytecode_parsert::rClassFile().
implementst java_bytecode_parse_treet::classt::implements |
Definition at line 261 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rinterfaces().
bool java_bytecode_parse_treet::classt::is_abstract =false |
Definition at line 208 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
bool java_bytecode_parse_treet::classt::is_annotation = false |
Definition at line 214 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
bool java_bytecode_parse_treet::classt::is_enum =false |
Definition at line 209 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
bool java_bytecode_parse_treet::classt::is_final = false |
Definition at line 211 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
bool java_bytecode_parse_treet::classt::is_interface = false |
Definition at line 212 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
bool java_bytecode_parse_treet::classt::is_private =false |
Definition at line 210 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
bool java_bytecode_parse_treet::classt::is_protected =false |
Definition at line 210 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
bool java_bytecode_parse_treet::classt::is_public =false |
Definition at line 210 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
bool java_bytecode_parse_treet::classt::is_synthetic = false |
Definition at line 213 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rClassFile().
lambda_method_handle_mapt java_bytecode_parse_treet::classt::lambda_method_handle_map |
Definition at line 258 of file java_bytecode_parse_tree.h.
Referenced by add_method_handle(), get_method_handle(), and require_parse_tree::require_lambda_entry_for_descriptor().
methodst java_bytecode_parse_treet::classt::methods |
Definition at line 266 of file java_bytecode_parse_tree.h.
Referenced by add_method(), create_stub_global_symbols(), ci_lazy_methodst::entry_point_methods(), generate_constant_global_variables(), java_bytecode_parsert::get_class_refs(), infer_opaque_type_fields(), output(), java_bytecode_parsert::rclass_attribute(), and require_parse_tree::require_method().
irep_idt java_bytecode_parse_treet::classt::name |
Definition at line 207 of file java_bytecode_parse_tree.h.
Referenced by add_method_handle(), java_bytecode_convert_classt::convert(), create_stub_global_symbols(), java_bytecode_parsert::get_class_refs(), get_method_handle(), java_class_loadert::get_parse_tree(), output(), java_bytecode_parsert::rclass_attribute(), java_bytecode_parsert::rClassFile(), java_bytecode_parsert::read_bootstrapmethods_entry(), and java_bytecode_parsert::rmethod_attribute().
optionalt<std::string> java_bytecode_parse_treet::classt::signature |
Definition at line 262 of file java_bytecode_parse_tree.h.
Referenced by java_bytecode_convert_classt::convert(), and java_bytecode_parsert::rclass_attribute().