xgboost
公共类型 | 公共成员函数 | 所有成员列表
xgboost::common::IterSpan< It > 类模板参考

一个简单的自定义 Span 类型,使用通用迭代器而非指针。更多...

#include <span.h>

xgboost::common::IterSpan< It > 的协作图
Collaboration graph

公共类型

using value_type = typename std::iterator_traits< It >::value_type
 
using index_type = std::size_t
 
using iterator = It
 

公共成员函数

 IterSpan ()=default
 
XGBOOST_DEVICE IterSpan (It it, index_type size)
 
XGBOOST_DEVICE IterSpan (common::Span< It, dynamic_extent > span)
 
XGBOOST_DEVICE index_type size () const noexcept
 
decltype(auto) XGBOOST_DEVICE operator[] (index_type i) const
 
decltype(auto) XGBOOST_DEVICE operator[] (index_type i)
 
XGBOOST_DEVICE bool empty () const noexcept
 
XGBOOST_DEVICE It data () const noexcept
 
XGBOOST_DEVICE IterSpan< It > subspan (index_type _offset, index_type _count=dynamic_extent) const
 
constexpr XGBOOST_DEVICE iterator begin () const noexcept
 
constexpr XGBOOST_DEVICE iterator end () const noexcept
 

详细描述

template<typename It>
class xgboost::common::IterSpan< It >

一个简单的自定义 Span 类型,使用通用迭代器而非指针。

成员类型定义文档

◆ index_type

template<typename It >
using xgboost::common::IterSpan< It >::index_type = std::size_t

◆ iterator

template<typename It >
using xgboost::common::IterSpan< It >::iterator = It

◆ value_type

template<typename It >
using xgboost::common::IterSpan< It >::value_type = typename std::iterator_traits<It>::value_type

构造函数与析构函数文档

◆ IterSpan() [1/3]

template<typename It >
xgboost::common::IterSpan< It >::IterSpan ( )
default

◆ IterSpan() [2/3]

template<typename It >
XGBOOST_DEVICE xgboost::common::IterSpan< It >::IterSpan ( It  it,
index_type  size 
)
inline

◆ IterSpan() [3/3]

template<typename It >
XGBOOST_DEVICE xgboost::common::IterSpan< It >::IterSpan ( common::Span< It, dynamic_extent span)
inlineexplicit

成员函数文档

◆ begin()

template<typename It >
constexpr XGBOOST_DEVICE iterator xgboost::common::IterSpan< It >::begin ( ) const
inlineconstexprnoexcept

◆ data()

template<typename It >
XGBOOST_DEVICE It xgboost::common::IterSpan< It >::data ( ) const
inlinenoexcept

◆ empty()

template<typename It >
XGBOOST_DEVICE bool xgboost::common::IterSpan< It >::empty ( ) const
inlinenoexcept

◆ end()

template<typename It >
constexpr XGBOOST_DEVICE iterator xgboost::common::IterSpan< It >::end ( ) const
inlineconstexprnoexcept

◆ operator[]() [1/2]

template<typename It >
decltype(auto) XGBOOST_DEVICE xgboost::common::IterSpan< It >::operator[] ( index_type  i)
inline

◆ operator[]() [2/2]

template<typename It >
decltype(auto) XGBOOST_DEVICE xgboost::common::IterSpan< It >::operator[] ( index_type  i) const
inline

◆ size()

template<typename It >
XGBOOST_DEVICE index_type xgboost::common::IterSpan< It >::size ( ) const
inlinenoexcept

◆ subspan()

template<typename It >
XGBOOST_DEVICE IterSpan<It> xgboost::common::IterSpan< It >::subspan ( index_type  _offset,
index_type  _count = dynamic_extent 
) const
inline

此类的文档生成自以下文件