xgboost

Public Types | Public Member Functions | Public Attributes | Protected Attributes | Friends | List of all members
xgboost::common::detail::SpanIterator< SpanType, IsConst > Class Template Reference

`#include <span.h>`

Collaboration diagram for xgboost::common::detail::SpanIterator< SpanType, IsConst >:

## Public Types
using | iterator_category = std::random_access_iterator_tag
using | value_type = typename SpanType::value_type
using | difference_type = detail::ptrdiff_t
using | reference = typename std::conditional< IsConst, const ElementType, ElementType >::type &
using | pointer = typename std::add_pointer< reference >::type

## Public Member Functions
constexpr | SpanIterator ()=default
constexpr XGBOOST_DEVICE | SpanIterator (const SpanType *_span, typename SpanType::index_type _idx) __span_noexcept
template<bool B, typename std::enable_if<!B &&IsConst >::type * = nullptr>
constexpr XGBOOST_DEVICE | SpanIterator (const SpanIterator< SpanType, B > &other_) __span_noexcept
XGBOOST_DEVICE reference | operator* () const
XGBOOST_DEVICE reference | operator[] (difference_type n) const
XGBOOST_DEVICE pointer | operator-> () const
XGBOOST_DEVICE SpanIterator & | operator++ ()
XGBOOST_DEVICE SpanIterator | operator++ (int)
XGBOOST_DEVICE SpanIterator & | operator-- ()
XGBOOST_DEVICE SpanIterator | operator-- (int)
XGBOOST_DEVICE SpanIterator | operator+ (difference_type n) const
XGBOOST_DEVICE SpanIterator & | operator+= (difference_type n)
XGBOOST_DEVICE difference_type | operator- (SpanIterator rhs) const
XGBOOST_DEVICE SpanIterator | operator- (difference_type n) const
XGBOOST_DEVICE SpanIterator & | operator-= (difference_type n)

## Public Attributes
friend | SpanIterator< SpanType, true >

## Protected Attributes
const SpanType * | span_ { nullptr }
SpanType::index_type | index_ { 0 }

## Friends
constexpr XGBOOST_DEVICE friend bool | operator== (SpanIterator _lhs, SpanIterator _rhs) __span_noexcept
constexpr XGBOOST_DEVICE friend bool | operator!= (SpanIterator _lhs, SpanIterator _rhs) __span_noexcept
constexpr XGBOOST_DEVICE friend bool | operator< (SpanIterator _lhs, SpanIterator _rhs) __span_noexcept
constexpr XGBOOST_DEVICE friend bool | operator<= (SpanIterator _lhs, SpanIterator _rhs) __span_noexcept
constexpr XGBOOST_DEVICE friend bool | operator> (SpanIterator _lhs, SpanIterator _rhs) __span_noexcept
constexpr XGBOOST_DEVICE friend bool | operator>= (SpanIterator _lhs, SpanIterator _rhs) __span_noexcept

## Member Typedef Documentation

## ◆ difference_type

template<typename SpanType , bool IsConst>

using xgboost::common::detail::SpanIterator< SpanType, IsConst >::difference_type = detail::ptrdiff_t

## ◆ iterator_category

template<typename SpanType , bool IsConst>

using xgboost::common::detail::SpanIterator< SpanType, IsConst >::iterator_category = std::random_access_iterator_tag

## ◆ pointer

template<typename SpanType , bool IsConst>

using xgboost::common::detail::SpanIterator< SpanType, IsConst >::pointer = typename std::add_pointer<reference>::type

## ◆ reference

template<typename SpanType , bool IsConst>

using xgboost::common::detail::SpanIterator< SpanType, IsConst >::reference = typename std::conditional< IsConst, const ElementType, ElementType>::type&

## ◆ value_type

template<typename SpanType , bool IsConst>

using xgboost::common::detail::SpanIterator< SpanType, IsConst >::value_type = typename SpanType::value_type

## Constructor & Destructor Documentation

## ◆ SpanIterator() [1/3]

template<typename SpanType , bool IsConst>

constexpr xgboost::common::detail::SpanIterator< SpanType, IsConst >::SpanIterator | ( |  | ) |
| constexpr default

## ◆ SpanIterator() [2/3]

template<typename SpanType , bool IsConst>

constexpr XGBOOST_DEVICE xgboost::common::detail::SpanIterator< SpanType, IsConst >::SpanIterator | ( | const SpanType * | _span,
|  | typename SpanType::index_type | _idx
| ) |  |
| inline constexpr

## ◆ SpanIterator() [3/3]

template<typename SpanType , bool IsConst>
template<bool B, typename std::enable_if<!B &&IsConst >::type * = nullptr>

constexpr XGBOOST_DEVICE xgboost::common::detail::SpanIterator< SpanType, IsConst >::SpanIterator | ( | const SpanIterator< SpanType, B > & | other_ | ) |
| inline constexpr

## Member Function Documentation

## ◆ operator*()

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE reference xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator* | ( |  | ) | const
| inline

## ◆ operator+()

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE SpanIterator xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator+ | ( | difference_type | n | ) | const
| inline

## ◆ operator++() [1/2]

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE SpanIterator& xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator++ | ( |  | ) |
| inline

## ◆ operator++() [2/2]

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE SpanIterator xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator++ | ( | int |  | ) |
| inline

## ◆ operator+=()

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE SpanIterator& xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator+= | ( | difference_type | n | ) |
| inline

## ◆ operator-() [1/2]

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE SpanIterator xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator- | ( | difference_type | n | ) | const
| inline

## ◆ operator-() [2/2]

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE difference_type xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator- | ( | SpanIterator< SpanType, IsConst > | rhs | ) | const
| inline

## ◆ operator--() [1/2]

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE SpanIterator& xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator-- | ( |  | ) |
| inline

## ◆ operator--() [2/2]

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE SpanIterator xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator-- | ( | int |  | ) |
| inline

## ◆ operator-=()

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE SpanIterator& xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator-= | ( | difference_type | n | ) |
| inline

## ◆ operator->()

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE pointer xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator-> | ( |  | ) | const
| inline

## ◆ operator[]()

template<typename SpanType , bool IsConst>

XGBOOST_DEVICE reference xgboost::common::detail::SpanIterator< SpanType, IsConst >::operator[] | ( | difference_type | n | ) | const
| inline

## Friends And Related Function Documentation

## ◆ operator!=

template<typename SpanType , bool IsConst>

constexpr XGBOOST_DEVICE friend bool operator!= | ( | SpanIterator< SpanType, IsConst > | _lhs,
|  | SpanIterator< SpanType, IsConst > | _rhs
| ) |  |
| friend

## ◆ operator<

template<typename SpanType , bool IsConst>

constexpr XGBOOST_DEVICE friend bool operator< | ( | SpanIterator< SpanType, IsConst > | _lhs,
|  | SpanIterator< SpanType, IsConst > | _rhs
| ) |  |
| friend

## ◆ operator<=

template<typename SpanType , bool IsConst>

constexpr XGBOOST_DEVICE friend bool operator<= | ( | SpanIterator< SpanType, IsConst > | _lhs,
|  | SpanIterator< SpanType, IsConst > | _rhs
| ) |  |
| friend

## ◆ operator==

template<typename SpanType , bool IsConst>

constexpr XGBOOST_DEVICE friend bool operator== | ( | SpanIterator< SpanType, IsConst > | _lhs,
|  | SpanIterator< SpanType, IsConst > | _rhs
| ) |  |
| friend

## ◆ operator>

template<typename SpanType , bool IsConst>

constexpr XGBOOST_DEVICE friend bool operator> | ( | SpanIterator< SpanType, IsConst > | _lhs,
|  | SpanIterator< SpanType, IsConst > | _rhs
| ) |  |
| friend

## ◆ operator>=

template<typename SpanType , bool IsConst>

constexpr XGBOOST_DEVICE friend bool operator>= | ( | SpanIterator< SpanType, IsConst > | _lhs,
|  | SpanIterator< SpanType, IsConst > | _rhs
| ) |  |
| friend

## Member Data Documentation

## ◆ index_

template<typename SpanType , bool IsConst>

SpanType::index_type xgboost::common::detail::SpanIterator< SpanType, IsConst >::index_ { 0 }
| protected

## ◆ span_

template<typename SpanType , bool IsConst>

const SpanType* xgboost::common::detail::SpanIterator< SpanType, IsConst >::span_ { nullptr }
| protected

## ◆ SpanIterator< SpanType, true >

template<typename SpanType , bool IsConst>

friend xgboost::common::detail::SpanIterator< SpanType, IsConst >::SpanIterator< SpanType, true >

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

- /home/runner/work/xgboost/xgboost/include/xgboost/span.h