OpenTTD Source 20260512-master-g20b387b91f
RailStationTileLayout< T >::Iterator Class Reference

Public Types

using value_type = StationGfx
using difference_type = std::ptrdiff_t
using iterator_category = std::forward_iterator_tag
using pointer = void
using reference = void

Public Member Functions

 Iterator (const RailStationTileLayout &stl)
bool operator== (const Iterator &rhs) const
bool operator== (const std::default_sentinel_t &) const
StationGfx operator* () const
 Dereference operator.
Iterator & operator++ ()
Iterator operator++ (int)
StationGfx operator* () const
 Dereference operator.
StationGfx operator* () const
 Dereference operator.

Private Attributes

const RailStationTileLayoutstl
 Station tile layout being iterated.
uint position = 0
 Position within iterator.

Detailed Description

template<StationType T>
class RailStationTileLayout< T >::Iterator

Definition at line 32 of file station_layout_type.h.

Member Typedef Documentation

◆ difference_type

template<StationType T>
using RailStationTileLayout< T >::Iterator::difference_type = std::ptrdiff_t

Definition at line 37 of file station_layout_type.h.

◆ iterator_category

template<StationType T>
using RailStationTileLayout< T >::Iterator::iterator_category = std::forward_iterator_tag

Definition at line 38 of file station_layout_type.h.

◆ pointer

template<StationType T>
using RailStationTileLayout< T >::Iterator::pointer = void

Definition at line 39 of file station_layout_type.h.

◆ reference

template<StationType T>
using RailStationTileLayout< T >::Iterator::reference = void

Definition at line 40 of file station_layout_type.h.

◆ value_type

template<StationType T>
using RailStationTileLayout< T >::Iterator::value_type = StationGfx

Definition at line 36 of file station_layout_type.h.

Constructor & Destructor Documentation

◆ Iterator()

template<StationType T>
RailStationTileLayout< T >::Iterator::Iterator ( const RailStationTileLayout & stl)
inline

Definition at line 42 of file station_layout_type.h.

Member Function Documentation

◆ operator*() [1/3]

Dereference operator.

Returns
The StationGfx value associated with the index this iterator points to.

Definition at line 1231 of file station_cmd.cpp.

References position, and stl.

◆ operator*() [2/3]

template<StationType T>
StationGfx RailStationTileLayout< T >::Iterator::operator* ( ) const

Dereference operator.

Returns
The StationGfx value associated with the index this iterator points to.

◆ operator*() [3/3]

Dereference operator.

Returns
The StationGfx value associated with the index this iterator points to.

Definition at line 197 of file waypoint_cmd.cpp.

References position, and stl.

◆ operator++() [1/2]

template<StationType T>
Iterator & RailStationTileLayout< T >::Iterator::operator++ ( )
inline

Definition at line 53 of file station_layout_type.h.

◆ operator++() [2/2]

template<StationType T>
Iterator RailStationTileLayout< T >::Iterator::operator++ ( int )
inline

Definition at line 59 of file station_layout_type.h.

◆ operator==() [1/2]

template<StationType T>
bool RailStationTileLayout< T >::Iterator::operator== ( const Iterator & rhs) const
inline

Definition at line 44 of file station_layout_type.h.

◆ operator==() [2/2]

template<StationType T>
bool RailStationTileLayout< T >::Iterator::operator== ( const std::default_sentinel_t & ) const
inline

Definition at line 45 of file station_layout_type.h.

Field Documentation

◆ position

template<StationType T>
uint RailStationTileLayout< T >::Iterator::position = 0
private

Position within iterator.

Definition at line 34 of file station_layout_type.h.

Referenced by operator*().

◆ stl

template<StationType T>
const RailStationTileLayout& RailStationTileLayout< T >::Iterator::stl
private

Station tile layout being iterated.

Definition at line 33 of file station_layout_type.h.

Referenced by operator*().


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