abs_address_range

Defined in header: <ixion/address_range.hpp>

class abs_address_range

STL-compliant range that yields every abs_address_t inside an abs_range_t one address at a time.

The iteration order is determined by rc_direction_t:

  • horizontal walks row-major within each sheet (column varies fastest).

  • vertical walks column-major within each sheet (row varies fastest).

In either direction, iteration visits all cells before advancing to the next sheet.

The range purely walks the address space specified by the abs_range_t bounds; it does not reference any sheet contents. Use model_context::iterate_cells to iterate over cell values.

Public Functions

abs_address_range(const abs_range_t &range, rc_direction_t dir)
~abs_address_range()
const_iterator begin() const
const_iterator end() const
const_iterator cbegin() const
const_iterator cend() const
class const_iterator

Public Types

using value_type = abs_address_t

Public Functions

const_iterator()
const_iterator(const const_iterator &r)
const_iterator(const_iterator &&r)
~const_iterator()
const_iterator &operator++()
const_iterator operator++(int)
const_iterator &operator--()
const_iterator operator--(int)
const value_type &operator*() const
const value_type *operator->() const
bool operator==(const const_iterator &r) const