39 template<
typename dtype,
typename Po
interType,
typename DifferenceType>
201 return ptr_ -
rhs.ptr_;
225 return ptr_ ==
rhs.ptr_;
237 return !(*
this ==
rhs);
249 return ptr_ <
rhs.ptr_;
273 return !(
rhs < *
this);
285 return !(*
this <
rhs);
300 template<
class dtype,
typename Po
interType,
typename DifferenceType>
311 template<
typename dtype,
typename Po
interType,
typename DifferenceType>
325 using MyBase::MyBase;
438 using MyBase::operator-;
474 template<
class dtype,
typename Po
interType,
typename DifferenceType>
485 template<
typename dtype,
typename SizeType,
typename Po
interType,
typename DifferenceType>
518 size_(numRows_ * numCols_)
601 currPtr_ = colIdx2Ptr(ptr2ColIdx(currPtr_) +
offset);
652 return ptr2ColIdx(currPtr_) - ptr2ColIdx(
rhs.currPtr_);
676 return currPtr_ ==
rhs.currPtr_;
688 return !(*
this ==
rhs);
700 return *
this -
rhs < 0;
712 return *
this -
rhs > 0;
724 return !(
rhs < *
this);
736 return !(*
this <
rhs);
760 const auto rowIdx = ptr - ptr_;
766 const auto row =
rowIdx / numCols_;
767 const auto col =
rowIdx % numCols_;
768 return row + col * numRows_;
785 const auto row =
colIdx % numRows_;
786 const auto col =
colIdx / numRows_;
787 const auto rowIdx = col + row * numCols_;
800 template<
class dtype,
typename SizeType,
typename Po
interType,
typename DifferenceType>
811 template<
typename dtype,
typename SizeType,
typename Po
interType,
typename DifferenceType>
826 using MyBase::MyBase;
939 using MyBase::operator-;
975 template<
class dtype,
typename SizeType,
typename Po
interType,
typename DifferenceType>
Custom column iterator for NdArray.
Definition NdArrayIterators.hpp:813
self_type & operator+=(const difference_type offset) noexcept
Definition NdArrayIterators.hpp:907
std::random_access_iterator_tag iterator_category
Definition NdArrayIterators.hpp:819
self_type operator++(int) noexcept
Definition NdArrayIterators.hpp:868
reference operator[](const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:961
self_type operator-(const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:948
self_type operator+(const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:920
self_type & operator-=(const difference_type offset) noexcept
Definition NdArrayIterators.hpp:933
dtype value_type
Definition NdArrayIterators.hpp:820
SizeType size_type
Definition NdArrayIterators.hpp:821
self_type operator--(int) noexcept
Definition NdArrayIterators.hpp:893
self_type & operator++() noexcept
Definition NdArrayIterators.hpp:856
value_type & reference
Definition NdArrayIterators.hpp:823
self_type & operator--() noexcept
Definition NdArrayIterators.hpp:881
DifferenceType difference_type
Definition NdArrayIterators.hpp:824
pointer operator->() const noexcept
Definition NdArrayIterators.hpp:845
PointerType pointer
Definition NdArrayIterators.hpp:822
reference operator*() const noexcept
Definition NdArrayIterators.hpp:834
Custom column const_iterator for NdArray.
Definition NdArrayIterators.hpp:487
self_type operator+(const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:612
self_type & operator+=(const difference_type offset) noexcept
Definition NdArrayIterators.hpp:599
pointer operator->() const noexcept
Definition NdArrayIterators.hpp:539
reference operator[](const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:662
dtype value_type
Definition NdArrayIterators.hpp:493
NdArrayConstColumnIterator()=default
std::random_access_iterator_tag iterator_category
Definition NdArrayIterators.hpp:492
PointerType pointer
Definition NdArrayIterators.hpp:495
self_type & operator-=(const difference_type offset) noexcept
Definition NdArrayIterators.hpp:625
self_type operator--(int) noexcept
Definition NdArrayIterators.hpp:585
difference_type operator-(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:650
const value_type & reference
Definition NdArrayIterators.hpp:496
self_type operator-(const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:637
self_type & operator--() noexcept
Definition NdArrayIterators.hpp:574
bool operator>(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:710
self_type operator++(int) noexcept
Definition NdArrayIterators.hpp:561
bool operator<=(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:722
bool operator>=(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:734
SizeType size_type
Definition NdArrayIterators.hpp:494
self_type & operator++() noexcept
Definition NdArrayIterators.hpp:550
bool operator<(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:698
reference operator*() const noexcept
Definition NdArrayIterators.hpp:528
DifferenceType difference_type
Definition NdArrayIterators.hpp:497
bool operator!=(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:686
bool operator==(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:674
NdArrayConstColumnIterator(pointer ptr, SizeType numRows, SizeType numCols) noexcept
Definition NdArrayIterators.hpp:513
Custom const_iterator for NdArray.
Definition NdArrayIterators.hpp:41
bool operator>=(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:283
self_type & operator+=(const difference_type offset) noexcept
Definition NdArrayIterators.hpp:148
self_type & operator--() noexcept
Definition NdArrayIterators.hpp:122
DifferenceType difference_type
Definition NdArrayIterators.hpp:50
bool operator<=(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:271
std::random_access_iterator_tag iterator_category
Definition NdArrayIterators.hpp:46
self_type & operator++() noexcept
Definition NdArrayIterators.hpp:97
pointer operator->() const noexcept
Definition NdArrayIterators.hpp:86
self_type operator++(int) noexcept
Definition NdArrayIterators.hpp:109
PointerType pointer
Definition NdArrayIterators.hpp:48
self_type operator-(const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:186
NdArrayConstIterator()=default
self_type operator--(int) noexcept
Definition NdArrayIterators.hpp:134
self_type operator+(const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:161
bool operator<(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:247
reference operator[](const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:211
bool operator>(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:259
self_type & operator-=(const difference_type offset) noexcept
Definition NdArrayIterators.hpp:174
bool operator!=(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:235
difference_type operator-(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:199
NdArrayConstIterator(pointer ptr) noexcept
Definition NdArrayIterators.hpp:64
const value_type & reference
Definition NdArrayIterators.hpp:49
bool operator==(const self_type &rhs) const noexcept
Definition NdArrayIterators.hpp:223
reference operator*() const noexcept
Definition NdArrayIterators.hpp:75
dtype value_type
Definition NdArrayIterators.hpp:47
Custom iterator for NdArray.
Definition NdArrayIterators.hpp:313
value_type & reference
Definition NdArrayIterators.hpp:322
self_type operator++(int) noexcept
Definition NdArrayIterators.hpp:367
reference operator[](const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:460
PointerType pointer
Definition NdArrayIterators.hpp:321
self_type & operator--() noexcept
Definition NdArrayIterators.hpp:380
std::random_access_iterator_tag iterator_category
Definition NdArrayIterators.hpp:319
self_type & operator+=(const difference_type offset) noexcept
Definition NdArrayIterators.hpp:406
DifferenceType difference_type
Definition NdArrayIterators.hpp:323
self_type operator-(const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:447
pointer operator->() const noexcept
Definition NdArrayIterators.hpp:344
self_type operator+(const difference_type offset) const noexcept
Definition NdArrayIterators.hpp:419
self_type operator--(int) noexcept
Definition NdArrayIterators.hpp:392
dtype value_type
Definition NdArrayIterators.hpp:320
self_type & operator-=(const difference_type offset) noexcept
Definition NdArrayIterators.hpp:432
reference operator*() const noexcept
Definition NdArrayIterators.hpp:333
self_type & operator++() noexcept
Definition NdArrayIterators.hpp:355
Definition Cartesian.hpp:40
NdArrayConstIterator< dtype, PointerType, DifferenceType > operator+(typename NdArrayConstIterator< dtype, PointerType, DifferenceType >::difference_type offset, NdArrayConstIterator< dtype, PointerType, DifferenceType > next) noexcept
Definition NdArrayIterators.hpp:302
NdArray< dtype > arange(dtype inStart, dtype inStop, dtype inStep=1)
Definition arange.hpp:59