CBMC
cpp_itemt Class Reference

#include <cpp_item.h>

+ Inheritance diagram for cpp_itemt:
+ Collaboration diagram for cpp_itemt:

Public Member Functions

cpp_declarationtmake_declaration ()
 
cpp_declarationtget_declaration ()
 
const cpp_declarationtget_declaration () const
 
bool is_declaration () const
 
cpp_linkage_spectmake_linkage_spec ()
 
cpp_linkage_spectget_linkage_spec ()
 
const cpp_linkage_spectget_linkage_spec () const
 
bool is_linkage_spec () const
 
cpp_namespace_spectmake_namespace_spec ()
 
cpp_namespace_spectget_namespace_spec ()
 
const cpp_namespace_spectget_namespace_spec () const
 
bool is_namespace_spec () const
 
cpp_usingtmake_using ()
 
cpp_usingtget_using ()
 
const cpp_usingtget_using () const
 
bool is_using () const
 
cpp_static_asserttmake_static_assert ()
 
cpp_static_asserttget_static_assert ()
 
bool is_static_assert () const
 
const source_locationtsource_location () 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_idtid () const
 
const std::string & id_string () const
 
void id (const irep_idt &_data)
 
const ireptfind (const irep_idt &name) const
 
ireptadd (const irep_idt &name)
 
ireptadd (const irep_idt &name, irept irep)
 
const std::string & get_string (const irep_idt &name) const
 
const irep_idtget (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 ()
 
subtget_sub ()
 
const subtget_sub () const
 
named_subtget_named_sub ()
 
const named_subtget_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_treetoperator= (const sharing_treet &irep)
 
sharing_treetoperator= (sharing_treet &&irep)
 
 ~sharing_treet ()
 
const dtread () const
 
dtwrite ()
 

Additional Inherited Members

- Public Types inherited from irept
using baset = tree_implementationt
 
- Public Types inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > >
using dt = tree_nodet< irept, forward_list_as_mapt< irep_idt, irept >, true >
 
using subt = typename dt::subt
 
using named_subt = typename dt::named_subt
 
using tree_implementationt = sharing_treet
 Used to refer to this class from derived classes. 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 > >
dtdata
 
- Static Protected Attributes inherited from sharing_treet< irept, forward_list_as_mapt< irep_idt, irept > >
static dt empty_d
 

Detailed Description

Definition at line 21 of file cpp_item.h.

Member Function Documentation

◆ get_declaration() [1/2]

cpp_declarationt& cpp_itemt::get_declaration ( )
inline

Definition at line 32 of file cpp_item.h.

◆ get_declaration() [2/2]

const cpp_declarationt& cpp_itemt::get_declaration ( ) const
inline

Definition at line 38 of file cpp_item.h.

◆ get_linkage_spec() [1/2]

cpp_linkage_spect& cpp_itemt::get_linkage_spec ( )
inline

Definition at line 57 of file cpp_item.h.

◆ get_linkage_spec() [2/2]

const cpp_linkage_spect& cpp_itemt::get_linkage_spec ( ) const
inline

Definition at line 63 of file cpp_item.h.

◆ get_namespace_spec() [1/2]

cpp_namespace_spect& cpp_itemt::get_namespace_spec ( )
inline

Definition at line 82 of file cpp_item.h.

◆ get_namespace_spec() [2/2]

const cpp_namespace_spect& cpp_itemt::get_namespace_spec ( ) const
inline

Definition at line 88 of file cpp_item.h.

◆ get_static_assert()

cpp_static_assertt& cpp_itemt::get_static_assert ( )
inline

Definition at line 132 of file cpp_item.h.

◆ get_using() [1/2]

cpp_usingt& cpp_itemt::get_using ( )
inline

Definition at line 107 of file cpp_item.h.

◆ get_using() [2/2]

const cpp_usingt& cpp_itemt::get_using ( ) const
inline

Definition at line 113 of file cpp_item.h.

◆ is_declaration()

bool cpp_itemt::is_declaration ( ) const
inline

Definition at line 44 of file cpp_item.h.

◆ is_linkage_spec()

bool cpp_itemt::is_linkage_spec ( ) const
inline

Definition at line 69 of file cpp_item.h.

◆ is_namespace_spec()

bool cpp_itemt::is_namespace_spec ( ) const
inline

Definition at line 94 of file cpp_item.h.

◆ is_static_assert()

bool cpp_itemt::is_static_assert ( ) const
inline

Definition at line 138 of file cpp_item.h.

◆ is_using()

bool cpp_itemt::is_using ( ) const
inline

Definition at line 119 of file cpp_item.h.

◆ make_declaration()

cpp_declarationt& cpp_itemt::make_declaration ( )
inline

Definition at line 26 of file cpp_item.h.

◆ make_linkage_spec()

cpp_linkage_spect& cpp_itemt::make_linkage_spec ( )
inline

Definition at line 51 of file cpp_item.h.

◆ make_namespace_spec()

cpp_namespace_spect& cpp_itemt::make_namespace_spec ( )
inline

Definition at line 76 of file cpp_item.h.

◆ make_static_assert()

cpp_static_assertt& cpp_itemt::make_static_assert ( )
inline

Definition at line 126 of file cpp_item.h.

◆ make_using()

cpp_usingt& cpp_itemt::make_using ( )
inline

Definition at line 101 of file cpp_item.h.

◆ source_location()

const source_locationt& cpp_itemt::source_location ( ) const
inline

Definition at line 143 of file cpp_item.h.


The documentation for this class was generated from the following file: