GiNaC 1.8.7
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
GiNaC::const_postorder_iterator Class Reference

#include <ex.h>

Public Types

using iterator_category = std::forward_iterator_tag
 
using value_type = ex
 
using difference_type = ptrdiff_t
 
using pointer = const ex *
 
using reference = const ex &
 

Public Member Functions

 const_postorder_iterator () noexcept
 
 const_postorder_iterator (const ex &e, size_t n)
 
reference operator* () const
 
pointer operator-> () const
 
const_postorder_iteratoroperator++ ()
 
const_postorder_iterator operator++ (int)
 
bool operator== (const const_postorder_iterator &other) const noexcept
 
bool operator!= (const const_postorder_iterator &other) const noexcept
 

Private Member Functions

void descend ()
 
void increment ()
 

Private Attributes

std::stack< internal::_iter_rep, std::vector< internal::_iter_rep > > s
 

Detailed Description

Definition at line 590 of file ex.h.

Member Typedef Documentation

◆ iterator_category

using GiNaC::const_postorder_iterator::iterator_category = std::forward_iterator_tag

Definition at line 592 of file ex.h.

◆ value_type

Definition at line 593 of file ex.h.

◆ difference_type

Definition at line 594 of file ex.h.

◆ pointer

Definition at line 595 of file ex.h.

◆ reference

Definition at line 596 of file ex.h.

Constructor & Destructor Documentation

◆ const_postorder_iterator() [1/2]

GiNaC::const_postorder_iterator::const_postorder_iterator ( )
inlinenoexcept

Definition at line 597 of file ex.h.

◆ const_postorder_iterator() [2/2]

GiNaC::const_postorder_iterator::const_postorder_iterator ( const ex e,
size_t  n 
)
inline

Definition at line 599 of file ex.h.

References descend(), n, and s.

Member Function Documentation

◆ operator*()

reference GiNaC::const_postorder_iterator::operator* ( ) const
inline

Definition at line 606 of file ex.h.

References s.

◆ operator->()

pointer GiNaC::const_postorder_iterator::operator-> ( ) const
inline

Definition at line 611 of file ex.h.

References s.

◆ operator++() [1/2]

const_postorder_iterator & GiNaC::const_postorder_iterator::operator++ ( )
inline

Definition at line 616 of file ex.h.

References increment().

◆ operator++() [2/2]

const_postorder_iterator GiNaC::const_postorder_iterator::operator++ ( int  )
inline

Definition at line 622 of file ex.h.

References increment().

◆ operator==()

bool GiNaC::const_postorder_iterator::operator== ( const const_postorder_iterator other) const
inlinenoexcept

Definition at line 629 of file ex.h.

References s.

◆ operator!=()

bool GiNaC::const_postorder_iterator::operator!= ( const const_postorder_iterator other) const
inlinenoexcept

Definition at line 634 of file ex.h.

◆ descend()

void GiNaC::const_postorder_iterator::descend ( )
inlineprivate

◆ increment()

void GiNaC::const_postorder_iterator::increment ( )
inlineprivate

Definition at line 651 of file ex.h.

References descend(), and s.

Referenced by operator++().

Member Data Documentation

◆ s

std::stack<internal::_iter_rep, std::vector<internal::_iter_rep> > GiNaC::const_postorder_iterator::s
private

Definition at line 640 of file ex.h.

Referenced by const_postorder_iterator(), descend(), increment(), operator*(), operator->(), and operator==().


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

This page is part of the GiNaC developer's reference. It was generated automatically by doxygen. For an introduction, see the tutorial.