CBMC
java_bytecode_parse_treet Struct Reference

#include <java_bytecode_parse_tree.h>

+ Collaboration diagram for java_bytecode_parse_treet:

Classes

struct  annotationt
 
struct  classt
 
struct  fieldt
 
struct  instructiont
 
struct  membert
 
struct  methodt
 

Public Types

typedef std::vector< annotationtannotationst
 
typedef std::set< irep_idtclass_refst
 

Public Member Functions

 java_bytecode_parse_treet (const java_bytecode_parse_treet &)=delete
 
java_bytecode_parse_treetoperator= (const java_bytecode_parse_treet &)=delete
 
 java_bytecode_parse_treet (java_bytecode_parse_treet &&)=default
 
java_bytecode_parse_treetoperator= (java_bytecode_parse_treet &&)=default
 
void output (std::ostream &out) const
 
 java_bytecode_parse_treet ()=default
 An empty bytecode parse tree, no class name set. More...
 
 java_bytecode_parse_treet (const irep_idt &class_name)
 Create a blank parse tree for class class_name. More...
 

Static Public Member Functions

static std::optional< annotationtfind_annotation (const annotationst &annotations, const irep_idt &annotation_type_name)
 Find an annotation given its name. More...
 

Public Attributes

classt parsed_class
 
class_refst class_refs
 
bool loading_successful = false
 

Detailed Description

Definition at line 22 of file java_bytecode_parse_tree.h.

Member Typedef Documentation

◆ annotationst

Definition at line 49 of file java_bytecode_parse_tree.h.

◆ class_refst

Definition at line 315 of file java_bytecode_parse_tree.h.

Constructor & Destructor Documentation

◆ java_bytecode_parse_treet() [1/4]

java_bytecode_parse_treet::java_bytecode_parse_treet ( const java_bytecode_parse_treet )
delete

◆ java_bytecode_parse_treet() [2/4]

java_bytecode_parse_treet::java_bytecode_parse_treet ( java_bytecode_parse_treet &&  )
default

◆ java_bytecode_parse_treet() [3/4]

java_bytecode_parse_treet::java_bytecode_parse_treet ( )
default

An empty bytecode parse tree, no class name set.

◆ java_bytecode_parse_treet() [4/4]

java_bytecode_parse_treet::java_bytecode_parse_treet ( const irep_idt class_name)
inlineexplicit

Create a blank parse tree for class class_name.

Definition at line 324 of file java_bytecode_parse_tree.h.

Member Function Documentation

◆ find_annotation()

std::optional< java_bytecode_parse_treet::annotationt > java_bytecode_parse_treet::find_annotation ( const annotationst annotations,
const irep_idt annotation_type_name 
)
static

Find an annotation given its name.

Parameters
annotationsA vector of annotationt
annotation_type_nameAn irep_idt representing the name of the annotation class, e.g. java::java.lang.SuppressWarnings
Returns
The first annotation with the given name in annotations if one exists, an empty std::optional otherwise.

Definition at line 95 of file java_bytecode_parse_tree.cpp.

◆ operator=() [1/2]

java_bytecode_parse_treet& java_bytecode_parse_treet::operator= ( const java_bytecode_parse_treet )
delete

◆ operator=() [2/2]

java_bytecode_parse_treet& java_bytecode_parse_treet::operator= ( java_bytecode_parse_treet &&  )
default

◆ output()

void java_bytecode_parse_treet::output ( std::ostream &  out) const

Definition at line 19 of file java_bytecode_parse_tree.cpp.

Member Data Documentation

◆ class_refs

class_refst java_bytecode_parse_treet::class_refs

Definition at line 316 of file java_bytecode_parse_tree.h.

◆ loading_successful

bool java_bytecode_parse_treet::loading_successful = false

Definition at line 318 of file java_bytecode_parse_tree.h.

◆ parsed_class

classt java_bytecode_parse_treet::parsed_class

Definition at line 310 of file java_bytecode_parse_tree.h.


The documentation for this struct was generated from the following files: