cprover
Loading...
Searching...
No Matches
cpp_namet Class Reference

#include <cpp_name.h>

Inheritance diagram for cpp_namet:
Collaboration diagram for cpp_namet:

Classes

class  namet

Public Member Functions

 cpp_namet ()
 cpp_namet (const irep_idt &base_name)
 cpp_namet (const irep_idt &_base_name, const source_locationt &_source_location)
const source_locationtsource_location () const
irep_idt get_base_name () const
bool is_simple_name () const
bool is_operator () const
bool is_typename () const
bool is_qualified () const
bool is_destructor () const
bool has_template_args () const
std::string to_string () const
const exprtas_expr () const
const typetas_type () 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
bool ordering (const irept &other) const
 defines ordering on the internal representation
int compare (const irept &i) const
 defines ordering on the internal representation comments are ignored
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_treetoperator= (const 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
using subt
using named_subt
using tree_implementationt
 Used to refer to this class from derived classes.
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
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.
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 16 of file cpp_name.h.

Constructor & Destructor Documentation

◆ cpp_namet() [1/3]

cpp_namet::cpp_namet ( )
inline

Definition at line 57 of file cpp_name.h.

◆ cpp_namet() [2/3]

cpp_namet::cpp_namet ( const irep_idt & base_name)
inlineexplicit

Definition at line 61 of file cpp_name.h.

◆ cpp_namet() [3/3]

cpp_namet::cpp_namet ( const irep_idt & _base_name,
const source_locationt & _source_location )
inline

Definition at line 66 of file cpp_name.h.

Member Function Documentation

◆ as_expr()

const exprt & cpp_namet::as_expr ( ) const
inline

Definition at line 137 of file cpp_name.h.

◆ as_type()

const typet & cpp_namet::as_type ( ) const
inline

Definition at line 142 of file cpp_name.h.

◆ get_base_name()

irep_idt cpp_namet::get_base_name ( ) const

Definition at line 14 of file cpp_name.cpp.

◆ has_template_args()

bool cpp_namet::has_template_args ( ) const
inline

Definition at line 124 of file cpp_name.h.

◆ is_destructor()

bool cpp_namet::is_destructor ( ) const
inline

Definition at line 119 of file cpp_name.h.

◆ is_operator()

bool cpp_namet::is_operator ( ) const
inline

Definition at line 97 of file cpp_name.h.

◆ is_qualified()

bool cpp_namet::is_qualified ( ) const
inline

Definition at line 109 of file cpp_name.h.

◆ is_simple_name()

bool cpp_namet::is_simple_name ( ) const
inline

Definition at line 89 of file cpp_name.h.

◆ is_typename()

bool cpp_namet::is_typename ( ) const
inline

Definition at line 104 of file cpp_name.h.

◆ source_location()

const source_locationt & cpp_namet::source_location ( ) const
inline

Definition at line 73 of file cpp_name.h.

◆ to_string()

std::string cpp_namet::to_string ( ) const

Definition at line 73 of file cpp_name.cpp.


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