CVC3
Classes | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
CVC3::Expr::iterator Class Reference

#include <expr.h>

Inherits iterator< std::input_iterator_tag, Expr, ptrdiff_t >.

Collaboration diagram for CVC3::Expr::iterator:
Collaboration graph

Classes

class  Proxy
 Postfix increment requires a Proxy object to hold the intermediate value for dereferencing. More...
 

Public Member Functions

 iterator ()
 Default constructor.
 
bool operator== (const iterator &i) const
 Equality.
 
bool operator!= (const iterator &i) const
 Disequality.
 
const Exproperator* () const
 Dereference operator.
 
const Exproperator-> () const
 Dereference and member access.
 
iteratoroperator++ ()
 Prefix increment.
 
Proxy operator++ (int)
 Postfix increment.
 

Private Member Functions

 iterator (std::vector< Expr >::const_iterator it)
 Construct an iterator out of the vector's iterator.
 

Private Attributes

std::vector< Expr >::const_iterator d_it
 

Friends

class Expr
 

Detailed Description

Class: Expr::iterator Author: Sergey Berezin Created: Fri Dec 6 15:38:51 2002 Description: STL-like iterator API to the Expr's children. IMPORTANT: the iterator will not be valid after the originating expression is destroyed.

Definition at line 229 of file expr.h.

Constructor & Destructor Documentation

CVC3::Expr::iterator::iterator ( std::vector< Expr >::const_iterator  it)
inlineprivate

Construct an iterator out of the vector's iterator.

Definition at line 238 of file expr.h.

CVC3::Expr::iterator::iterator ( )
inline

Default constructor.

Definition at line 242 of file expr.h.

Member Function Documentation

bool CVC3::Expr::iterator::operator== ( const iterator i) const
inline

Equality.

Definition at line 246 of file expr.h.

References d_it.

bool CVC3::Expr::iterator::operator!= ( const iterator i) const
inline

Disequality.

Definition at line 250 of file expr.h.

const Expr& CVC3::Expr::iterator::operator* ( ) const
inline

Dereference operator.

Definition at line 252 of file expr.h.

const Expr* CVC3::Expr::iterator::operator-> ( ) const
inline

Dereference and member access.

Definition at line 254 of file expr.h.

References CVC3::operator*().

iterator& CVC3::Expr::iterator::operator++ ( )
inline

Prefix increment.

Definition at line 256 of file expr.h.

Proxy CVC3::Expr::iterator::operator++ ( int  )
inline

Postfix increment.

Returns
Proxy with the old Expr.
  Now, an expression like *i++ will return the current *i, and
  then advance the iterator.  However, don't try to use Proxy for
  anything else.

Definition at line 275 of file expr.h.

Friends And Related Function Documentation

friend class Expr
friend

Definition at line 232 of file expr.h.

Member Data Documentation

std::vector<Expr>::const_iterator CVC3::Expr::iterator::d_it
private

Definition at line 234 of file expr.h.

Referenced by operator==().


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