CodeSonar C++ API
[For improved navigation, enable JavaScript.]
Public Types | Public Member Functions | Related Functions | List of all members
cs::sfile_instance_iterator Class Reference

Iterator over the instances (sfileinst) of a source file (sfile). More...

Public Types

typedef const sfileinstconst_pointer
 const pointer to the type of the iterator elements. More...
 
typedef const sfileinstconst_reference
 const reference to the type of the iterator elements. More...
 
typedef cs_ssize_t difference_type
 Type of distance between iterators. More...
 
typedef std::forward_iterator_tag iterator_category
 Iterator is a ForwardIterator. More...
 
typedef sfileinstpointer
 Pointer to the type of the iterator elements. More...
 
typedef sfileinstreference
 Reference to the type of the iterator elements. More...
 

Public Member Functions

 sfile_instance_iterator (const sfile_instance_iterator &other)
 Copy constructor. More...
 
void advance ()
 Advance the iterator by one position. More...
 
std::string as_repr () const
 Get a representation of the iterator that includes information useful for debugging. More...
 
std::string as_string () const
 Get a simple string representation of the iterator. More...
 
bool at_end () const
 Check: is the iterator at the end of the structure? More...
 
bool operator!= (const sfile_instance_iterator &other) const
 Iterator inequality. More...
 
sfileinst operator* () const
 Iterator dereference operator. More...
 
sfile_instance_iteratoroperator++ ()
 Advance the iterator. More...
 
sfile_instance_iteratoroperator= (sfile_instance_iterator other)
 Iterator assignment operator. More...
 
bool operator== (const sfile_instance_iterator &other) const
 Iterator equality. More...
 
void swap (sfile_instance_iterator &other)
 Exchange the contents of this and other. More...
 

Related Functions

(Note that these are not member functions.)

std::ostream & operator<< (std::ostream &out, const sfile_instance_iterator &a)
 Print a representation of an sfile_instance_iterator object to the specified stream. More...
 

Detailed Description

Iterator over the instances (sfileinst) of a source file (sfile).

Initialize with sfile::instances().

Use as you would any other C++ iterator. For example:

// set up sfile sf, then...
for (cs::sfile_instance_iterator it = sf.instances(); !it.at_end(); ++it){
std::cout << "sfileinst: " << *it;
}

Member Typedef Documentation

◆ const_pointer

typedef const sfileinst* cs::sfile_instance_iterator::const_pointer
inherited

const pointer to the type of the iterator elements.

◆ const_reference

typedef const sfileinst& cs::sfile_instance_iterator::const_reference
inherited

const reference to the type of the iterator elements.

◆ difference_type

typedef cs_ssize_t cs::sfile_instance_iterator::difference_type
inherited

Type of distance between iterators.

◆ iterator_category

typedef std::forward_iterator_tag cs::sfile_instance_iterator::iterator_category
inherited

Iterator is a ForwardIterator.

◆ pointer

typedef sfileinst* cs::sfile_instance_iterator::pointer
inherited

Pointer to the type of the iterator elements.

◆ reference

typedef sfileinst& cs::sfile_instance_iterator::reference
inherited

Reference to the type of the iterator elements.

Constructor & Destructor Documentation

◆ sfile_instance_iterator()

cs::sfile_instance_iterator::sfile_instance_iterator ( const sfile_instance_iterator other)

Copy constructor.

Member Function Documentation

◆ advance()

void cs::sfile_instance_iterator::advance ( )
inlineinherited

Advance the iterator by one position.

Exceptions
result::OUT_OF_ELEMENTS

◆ as_repr()

std::string cs::sfile_instance_iterator::as_repr ( ) const
inlineinherited

Get a representation of the iterator that includes information useful for debugging.

Returns
The string representation.

◆ as_string()

std::string cs::sfile_instance_iterator::as_string ( ) const
inlineinherited

Get a simple string representation of the iterator.

Returns
The string representation.

◆ at_end()

bool cs::sfile_instance_iterator::at_end ( ) const
inlineinherited

Check: is the iterator at the end of the structure?

Returns
true if the iterator is at the end of the structure (there are no more elements to iterate over), false otherwise.

◆ operator!=()

bool cs::sfile_instance_iterator::operator!= ( const sfile_instance_iterator other) const
inlineinherited

Iterator inequality.

Parameters
[in]otherThe iterator to compare against.
Returns
false if and only if this and other are at the same position. Behavior is undefined if this and other are not iterating over the same collection.

◆ operator*()

sfileinst cs::sfile_instance_iterator::operator* ( ) const

Iterator dereference operator.

Returns
The element at the current iterator position.
Exceptions
result::OUT_OF_ELEMENTSif the iterator is at the end of the container.

◆ operator++()

sfile_instance_iterator& cs::sfile_instance_iterator::operator++ ( )
inlineinherited

Advance the iterator.

Exceptions
result::OUT_OF_ELEMENTSif the iterator is at the end of the container.

◆ operator=()

sfile_instance_iterator& cs::sfile_instance_iterator::operator= ( sfile_instance_iterator  other)

Iterator assignment operator.

Parameters
[in]otherThe iterator to assign.
Returns
A pointer to this.

◆ operator==()

bool cs::sfile_instance_iterator::operator== ( const sfile_instance_iterator other) const
inlineinherited

Iterator equality.

Returns
true if and only if this and other are at the same position. Behavior is undefined if this and other are not iterating over the same collection.

◆ swap()

void cs::sfile_instance_iterator::swap ( sfile_instance_iterator other)
inlineinherited

Exchange the contents of this and other.

Friends And Related Function Documentation

◆ operator<<()

std::ostream & operator<< ( std::ostream &  out,
const sfile_instance_iterator a 
)
related

Print a representation of an sfile_instance_iterator object to the specified stream.

Parameters
[in]outThe stream to print to.
[in]aThe sfile_instance_iterator object to print.
Returns
void

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