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

#include <ex.h>

Public Types

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

Public Member Functions

 const_iterator () noexcept
 
ex operator* () const
 
std::unique_ptr< exoperator-> () const
 
ex operator[] (difference_type n) const
 
const_iteratoroperator++ () noexcept
 
const_iterator operator++ (int) noexcept
 
const_iteratoroperator+= (difference_type n) noexcept
 
const_iterator operator+ (difference_type n) const noexcept
 
const_iteratoroperator-- () noexcept
 
const_iterator operator-- (int) noexcept
 
const_iteratoroperator-= (difference_type n) noexcept
 
const_iterator operator- (difference_type n) const noexcept
 
bool operator== (const const_iterator &other) const noexcept
 
bool operator!= (const const_iterator &other) const noexcept
 
bool operator< (const const_iterator &other) const noexcept
 
bool operator> (const const_iterator &other) const noexcept
 
bool operator<= (const const_iterator &other) const noexcept
 
bool operator>= (const const_iterator &other) const noexcept
 

Protected Attributes

ex e
 
size_t i
 

Private Member Functions

 const_iterator (const ex &e_, size_t i_) noexcept
 

Friends

class ex
 
class const_preorder_iterator
 
class const_postorder_iterator
 
const_iterator operator+ (difference_type n, const const_iterator &it) noexcept
 
difference_type operator- (const const_iterator &lhs, const const_iterator &rhs) noexcept
 

Detailed Description

Definition at line 370 of file ex.h.

Member Typedef Documentation

◆ iterator_category

using GiNaC::const_iterator::iterator_category = std::random_access_iterator_tag

Definition at line 375 of file ex.h.

◆ value_type

Definition at line 376 of file ex.h.

◆ difference_type

Definition at line 377 of file ex.h.

◆ pointer

Definition at line 378 of file ex.h.

◆ reference

Definition at line 379 of file ex.h.

Constructor & Destructor Documentation

◆ const_iterator() [1/2]

GiNaC::const_iterator::const_iterator ( )
inlinenoexcept

Definition at line 381 of file ex.h.

Referenced by operator+(), and operator-().

◆ const_iterator() [2/2]

GiNaC::const_iterator::const_iterator ( const ex e_,
size_t  i_ 
)
inlineprivatenoexcept

Definition at line 384 of file ex.h.

Member Function Documentation

◆ operator*()

ex GiNaC::const_iterator::operator* ( ) const
inline

Definition at line 389 of file ex.h.

References e, i, and GiNaC::ex::op().

◆ operator->()

std::unique_ptr< ex > GiNaC::const_iterator::operator-> ( ) const
inline

Definition at line 396 of file ex.h.

References ex.

◆ operator[]()

ex GiNaC::const_iterator::operator[] ( difference_type  n) const
inline

Definition at line 401 of file ex.h.

References e, i, n, and GiNaC::ex::op().

◆ operator++() [1/2]

const_iterator & GiNaC::const_iterator::operator++ ( )
inlinenoexcept

Definition at line 406 of file ex.h.

References i.

◆ operator++() [2/2]

const_iterator GiNaC::const_iterator::operator++ ( int  )
inlinenoexcept

Definition at line 412 of file ex.h.

References i.

◆ operator+=()

const_iterator & GiNaC::const_iterator::operator+= ( difference_type  n)
inlinenoexcept

Definition at line 419 of file ex.h.

References i, and n.

◆ operator+()

const_iterator GiNaC::const_iterator::operator+ ( difference_type  n) const
inlinenoexcept

Definition at line 425 of file ex.h.

References const_iterator(), e, i, and n.

◆ operator--() [1/2]

const_iterator & GiNaC::const_iterator::operator-- ( )
inlinenoexcept

Definition at line 435 of file ex.h.

References i.

◆ operator--() [2/2]

const_iterator GiNaC::const_iterator::operator-- ( int  )
inlinenoexcept

Definition at line 441 of file ex.h.

References i.

◆ operator-=()

const_iterator & GiNaC::const_iterator::operator-= ( difference_type  n)
inlinenoexcept

Definition at line 448 of file ex.h.

References i, and n.

◆ operator-()

const_iterator GiNaC::const_iterator::operator- ( difference_type  n) const
inlinenoexcept

Definition at line 454 of file ex.h.

References const_iterator(), e, i, and n.

◆ operator==()

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

Definition at line 464 of file ex.h.

References GiNaC::are_ex_trivially_equal(), e, and i.

◆ operator!=()

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

Definition at line 469 of file ex.h.

◆ operator<()

bool GiNaC::const_iterator::operator< ( const const_iterator other) const
inlinenoexcept

Definition at line 474 of file ex.h.

References i.

◆ operator>()

bool GiNaC::const_iterator::operator> ( const const_iterator other) const
inlinenoexcept

Definition at line 479 of file ex.h.

◆ operator<=()

bool GiNaC::const_iterator::operator<= ( const const_iterator other) const
inlinenoexcept

Definition at line 484 of file ex.h.

◆ operator>=()

bool GiNaC::const_iterator::operator>= ( const const_iterator other) const
inlinenoexcept

Definition at line 489 of file ex.h.

Friends And Related Function Documentation

◆ ex

friend class ex
friend

Definition at line 371 of file ex.h.

Referenced by operator->().

◆ const_preorder_iterator

friend class const_preorder_iterator
friend

Definition at line 372 of file ex.h.

◆ const_postorder_iterator

friend class const_postorder_iterator
friend

Definition at line 373 of file ex.h.

◆ operator+

const_iterator operator+ ( difference_type  n,
const const_iterator it 
)
friend

Definition at line 430 of file ex.h.

◆ operator-

difference_type operator- ( const const_iterator lhs,
const const_iterator rhs 
)
friend

Definition at line 459 of file ex.h.

Member Data Documentation

◆ e

ex GiNaC::const_iterator::e
protected

Definition at line 495 of file ex.h.

Referenced by operator*(), operator+(), operator-(), operator==(), and operator[]().

◆ i

size_t GiNaC::const_iterator::i
protected

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.