cprover
cpp_namet Class Reference

#include <cpp_name.h>

Inheritance diagram for cpp_namet:
[legend]
Collaboration diagram for cpp_namet:
[legend]

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 ()
 
 irept (const irept &irep)
 
 irept (irept &&irep)
 
ireptoperator= (const irept &irep)
 
ireptoperator= (irept &&irep)
 
 ~irept ()
 
const irep_idtid () const
 
const std::string & id_string () const
 
void id (const irep_idt &_data)
 
const ireptfind (const irep_namet &name) const
 
ireptadd (const irep_namet &name)
 
ireptadd (const irep_namet &name, const irept &irep)
 
const std::string & get_string (const irep_namet &name) const
 
const irep_idtget (const irep_namet &name) const
 
bool get_bool (const irep_namet &name) const
 
signed int get_int (const irep_namet &name) const
 
unsigned int get_unsigned_int (const irep_namet &name) const
 
std::size_t get_size_t (const irep_namet &name) const
 
long long get_long_long (const irep_namet &name) const
 
void set (const irep_namet &name, const irep_idt &value)
 
void set (const irep_namet &name, const irept &irep)
 
void set (const irep_namet &name, const long long value)
 
void remove (const irep_namet &name)
 
void move_to_sub (irept &irep)
 
void move_to_named_sub (const irep_namet &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 More...
 
void clear ()
 
void make_nil ()
 
subtget_sub ()
 
const subtget_sub () const
 
named_subtget_named_sub ()
 
const named_subtget_named_sub () const
 
named_subtget_comments ()
 
const named_subtget_comments () 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
 
const dtread () const
 
dtwrite ()
 

Additional Inherited Members

- Public Types inherited from irept
typedef std::vector< ireptsubt
 
typedef std::map< irep_namet, ireptnamed_subt
 
- Protected Member Functions inherited from irept
void detach ()
 
- Static Protected Member Functions inherited from irept
static bool is_comment (const irep_namet &name)
 
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 irept
dtdata
 
- Static Protected Attributes inherited from irept
static dt empty_d
 

Detailed Description

Definition at line 15 of file cpp_name.h.

Constructor & Destructor Documentation

◆ cpp_namet() [1/3]

cpp_namet::cpp_namet ( )
inline

Definition at line 56 of file cpp_name.h.

◆ cpp_namet() [2/3]

cpp_namet::cpp_namet ( const irep_idt base_name)
inlineexplicit

Definition at line 60 of file cpp_name.h.

References irept::get_sub().

◆ cpp_namet() [3/3]

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

Definition at line 65 of file cpp_name.h.

References irept::get_sub().

Member Function Documentation

◆ as_expr()

const exprt& cpp_namet::as_expr ( ) const
inline

Definition at line 132 of file cpp_name.h.

◆ as_type()

const typet& cpp_namet::as_type ( ) const
inline

Definition at line 137 of file cpp_name.h.

Referenced by copy_parent().

◆ get_base_name()

◆ has_template_args()

◆ is_destructor()

bool cpp_namet::is_destructor ( ) const
inline

Definition at line 116 of file cpp_name.h.

References irept::get_sub().

◆ is_operator()

bool cpp_namet::is_operator ( ) const
inline

Definition at line 96 of file cpp_name.h.

References irept::get_sub().

Referenced by cpp_typecheckt::typecheck_compound_declarator().

◆ is_qualified()

◆ is_simple_name()

◆ is_typename()

bool cpp_namet::is_typename ( ) const
inline

Definition at line 103 of file cpp_name.h.

References irept::get_bool().

◆ source_location()

◆ to_string()

std::string cpp_namet::to_string ( ) const

Definition at line 76 of file cpp_name.cpp.

References forall_irep, and irept::get_sub().


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