Jlm
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
jlm::rvsdg::Input::Iterator Class Referencefinal

#include <node.hpp>

Collaboration diagram for jlm::rvsdg::Input::Iterator:
Collaboration graph
[legend]

Public Types

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

Public Member Functions

constexpr Iterator (Input *input)
 
InputGetInput () const noexcept
 
Inputoperator* ()
 
Inputoperator-> () const
 
Iteratoroperator++ ()
 
Iterator operator++ (int)
 
bool operator== (const Iterator &other) const
 
bool operator!= (const Iterator &other) const
 

Private Member Functions

InputComputeNext () const
 

Private Attributes

InputInput_
 

Detailed Description

Definition at line 84 of file node.hpp.

Member Typedef Documentation

◆ difference_type

Definition at line 89 of file node.hpp.

◆ iterator_category

using jlm::rvsdg::Input::Iterator::iterator_category = std::forward_iterator_tag

Definition at line 87 of file node.hpp.

◆ pointer

Definition at line 90 of file node.hpp.

◆ reference

Definition at line 91 of file node.hpp.

◆ value_type

Definition at line 88 of file node.hpp.

Constructor & Destructor Documentation

◆ Iterator()

constexpr jlm::rvsdg::Input::Iterator::Iterator ( Input input)
inlineexplicitconstexpr

Definition at line 93 of file node.hpp.

Member Function Documentation

◆ ComputeNext()

Input * jlm::rvsdg::Input::Iterator::ComputeNext ( ) const
private

Definition at line 122 of file node.cpp.

◆ GetInput()

Input* jlm::rvsdg::Input::Iterator::GetInput ( ) const
inlinenoexcept

Definition at line 98 of file node.hpp.

◆ operator!=()

bool jlm::rvsdg::Input::Iterator::operator!= ( const Iterator other) const
inline

Definition at line 138 of file node.hpp.

◆ operator*()

Input& jlm::rvsdg::Input::Iterator::operator* ( )
inline

Definition at line 104 of file node.hpp.

◆ operator++() [1/2]

Iterator& jlm::rvsdg::Input::Iterator::operator++ ( )
inline

Definition at line 117 of file node.hpp.

◆ operator++() [2/2]

Iterator jlm::rvsdg::Input::Iterator::operator++ ( int  )
inline

Definition at line 124 of file node.hpp.

◆ operator->()

Input* jlm::rvsdg::Input::Iterator::operator-> ( ) const
inline

Definition at line 111 of file node.hpp.

◆ operator==()

bool jlm::rvsdg::Input::Iterator::operator== ( const Iterator other) const
inline

Definition at line 132 of file node.hpp.

Member Data Documentation

◆ Input_

Input* jlm::rvsdg::Input::Iterator::Input_
private

Definition at line 147 of file node.hpp.


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