cprover
symbol_table_baset::iteratort Class Reference

#include <symbol_table_base.h>

Collaboration diagram for symbol_table_baset::iteratort:
[legend]

Public Types

typedef symbolst::iterator::difference_type difference_type
 
typedef symbolst::const_iterator::value_type value_type
 
typedef symbolst::const_iterator::pointer pointer
 
typedef symbolst::const_iterator::reference reference
 
typedef symbolst::iterator::iterator_category iterator_category
 

Public Member Functions

 iteratort (symbolst::iterator it)
 
 iteratort (const iteratort &it, std::function< void(const irep_idt &id)> on_get_writeable)
 
bool operator!= (const iteratort &other) const
 
bool operator== (const iteratort &other) const
 
iteratortoperator++ ()
 Preincrement operator Do not call on the end() iterator. More...
 
iteratort operator++ (int)
 Post-increment operator. More...
 
reference operator* () const
 Dereference operator. More...
 
pointer operator-> () const
 Dereference operator (member access) More...
 
symboltget_writeable_symbol (const irep_idt &identifier)
 

Private Attributes

symbolst::iterator it
 
std::function< void(const irep_idt &id)> on_get_writeable
 

Detailed Description

Definition at line 118 of file symbol_table_base.h.

Member Typedef Documentation

◆ difference_type

typedef symbolst::iterator::difference_type symbol_table_baset::iteratort::difference_type

Definition at line 137 of file symbol_table_base.h.

◆ iterator_category

typedef symbolst::iterator::iterator_category symbol_table_baset::iteratort::iterator_category

Definition at line 141 of file symbol_table_base.h.

◆ pointer

typedef symbolst::const_iterator::pointer symbol_table_baset::iteratort::pointer

Definition at line 139 of file symbol_table_base.h.

◆ reference

typedef symbolst::const_iterator::reference symbol_table_baset::iteratort::reference

Definition at line 140 of file symbol_table_base.h.

◆ value_type

typedef symbolst::const_iterator::value_type symbol_table_baset::iteratort::value_type

Definition at line 138 of file symbol_table_base.h.

Constructor & Destructor Documentation

◆ iteratort() [1/2]

symbol_table_baset::iteratort::iteratort ( symbolst::iterator  it)
inlineexplicit

Definition at line 125 of file symbol_table_base.h.

◆ iteratort() [2/2]

symbol_table_baset::iteratort::iteratort ( const iteratort it,
std::function< void(const irep_idt &id)>  on_get_writeable 
)
inline

Definition at line 129 of file symbol_table_base.h.

Member Function Documentation

◆ get_writeable_symbol()

symbolt& symbol_table_baset::iteratort::get_writeable_symbol ( const irep_idt identifier)
inline

Definition at line 184 of file symbol_table_base.h.

References it, and on_get_writeable.

◆ operator!=()

bool symbol_table_baset::iteratort::operator!= ( const iteratort other) const
inline

Definition at line 143 of file symbol_table_base.h.

References it.

◆ operator*()

reference symbol_table_baset::iteratort::operator* ( ) const
inline

Dereference operator.

Remarks
Dereferencing end() iterator is undefined behaviour

Definition at line 172 of file symbol_table_base.h.

References it.

◆ operator++() [1/2]

iteratort& symbol_table_baset::iteratort::operator++ ( )
inline

Preincrement operator Do not call on the end() iterator.

Definition at line 155 of file symbol_table_base.h.

References it.

Referenced by operator++().

◆ operator++() [2/2]

iteratort symbol_table_baset::iteratort::operator++ ( int  )
inline

Post-increment operator.

Remarks
Expensive copy. Avoid if possible.

Definition at line 163 of file symbol_table_base.h.

References operator++().

◆ operator->()

pointer symbol_table_baset::iteratort::operator-> ( ) const
inline

Dereference operator (member access)

Remarks
Dereferencing end() iterator is undefined behaviour

Definition at line 179 of file symbol_table_base.h.

◆ operator==()

bool symbol_table_baset::iteratort::operator== ( const iteratort other) const
inline

Definition at line 148 of file symbol_table_base.h.

References it.

Member Data Documentation

◆ it

symbolst::iterator symbol_table_baset::iteratort::it
private

◆ on_get_writeable

std::function<void(const irep_idt &id)> symbol_table_baset::iteratort::on_get_writeable
private

Definition at line 122 of file symbol_table_base.h.

Referenced by get_writeable_symbol().


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