|
| | BlockRange ()=default |
| |
| | BlockRange (const BlockRange &)=default |
| |
| | BlockRange (BlockRange &&)=default |
| |
| | ~BlockRange ()=default |
| |
| BlockRange & | operator= (const BlockRange &)=default |
| |
| BlockRange & | operator= (BlockRange &&)=default |
| |
| template<typename Index1 , typename Index2 , typename = std::enable_if_t<detail::is_integral_range_v<Index1> && detail::is_integral_range_v<Index2>>> |
| | BlockRange (const Range &range, const Index1 &lower_bound, const Index2 &upper_bound) |
| | Construct a BlockRange defined by lower and upper bounds. More...
|
| |
| template<typename Index1 , typename Index2 , typename = std::enable_if_t<std::is_integral_v<Index1> && std::is_integral_v<Index2>>> |
| | BlockRange (const Range &range, const std::initializer_list< Index1 > &lower_bound, const std::initializer_list< Index2 > &upper_bound) |
| | Construct a BlockRange defined by lower and upper bounds. More...
|
| |
| template<typename PairRange , typename = std::enable_if_t<detail::is_gpair_range_v<PairRange>>> |
| | BlockRange (const Range &range, const PairRange &bounds) |
| | Construct Range defined by a range of {lower,upper} bound pairs. More...
|
| |
| template<typename GPair > |
| | BlockRange (const Range &range, const std::initializer_list< GPair > &bounds, std::enable_if_t< detail::is_gpair_v< GPair >> *=nullptr) |
| | Construct range defined by an initializer_list of std::initializer_list{lower,upper} bounds. More...
|
| |
| template<typename Index , typename = std::enable_if_t<std::is_integral_v<Index>>> |
| | BlockRange (const Range &range, const std::initializer_list< std::initializer_list< Index >> &bounds) |
| | Construct range defined by an initializer_list of std::initializer_list{lower,upper} bounds. More...
|
| |
| template<typename Index , typename std::enable_if_t< detail::is_integral_range_v< Index >> * = nullptr> |
| ordinal_type | ordinal (const Index &index) const |
| | calculate the ordinal index of i More...
|
| |
| template<typename... Index, typename std::enable_if<(sizeof...(Index) > 1ul)>::type * = nullptr> |
| ordinal_type | ordinal (const Index &... index) const |
| |
| ordinal_type | ordinal (ordinal_type index) const |
| | calculate the coordinate index of the ordinal index, index. More...
|
| |
| template<typename Index > |
| BlockRange & | resize (const Index &, const Index &) |
| | Resize of block range is not supported. More...
|
| |
| template<typename Index > |
| Range_ & | inplace_shift (const Index &) |
| | Shift the lower and upper bound of this range. More...
|
| |
| template<typename Index > |
| Range_ | shift (const Index &) |
| | Shift the lower and upper bound of this range. More...
|
| |
| void | swap (BlockRange &other) |
| |
| template<typename Archive > |
| void | serialize (const Archive &ar) const |
| | Serialization Block range. More...
|
| |
| | Range () |
| | Default constructor. More...
|
| |
| template<typename Index1 , typename Index2 , typename std::enable_if_t< detail::is_integral_sized_range_v< Index1 > &&detail::is_integral_sized_range_v< Index2 >> * = nullptr> |
| | Range (const Index1 &lower_bound, const Index2 &upper_bound) |
| | Construct range defined by upper and lower bound ranges. More...
|
| |
| template<typename Index1 , typename Index2 , typename = std::enable_if_t<std::is_integral_v<Index1> && std::is_integral_v<Index2>>> |
| | Range (const std::initializer_list< Index1 > &lower_bound, const std::initializer_list< Index2 > &upper_bound) |
| | Construct range defined by the upper and lower bound ranges. More...
|
| |
| template<typename Index , typename std::enable_if_t< detail::is_integral_sized_range_v< Index >> * = nullptr> |
| | Range (const Index &extent) |
| | Range constructor from a range of extents. More...
|
| |
| template<typename Index , typename = std::enable_if_t<std::is_integral_v<Index>>> |
| | Range (const std::initializer_list< Index > &extent) |
| | Range constructor from an initializer list of extents. More...
|
| |
| template<typename PairRange , typename = std::enable_if_t<detail::is_sized_range_v<PairRange> && detail::is_gpair_range_v<PairRange>>> |
| | Range (const PairRange &bounds) |
| | Construct Range defined by a range of {lower,upper} bound pairs. More...
|
| |
| template<typename GPair > |
| | Range (const std::initializer_list< GPair > &bounds, std::enable_if_t< detail::is_gpair_v< GPair >> *=nullptr) |
| | Construct range defined by an initializer_list of {lower,upper} bounds for each dimension given as a generalized pair. More...
|
| |
| template<typename Index , typename = std::enable_if_t<std::is_integral_v<Index>>> |
| | Range (const std::initializer_list< std::initializer_list< Index >> &bounds) |
| | Construct range defined by an initializer_list of std::initializer_list{lower,upper} bounds. More...
|
| |
| template<typename... Index, typename std::enable_if< detail::is_integral_list< Index... >::value >::type * = nullptr> |
| | Range (const Index... extents) |
| | Range constructor from a pack of extents for each dimension. More...
|
| |
| template<typename... IndexPairs, std::enable_if_t< detail::is_integral_pair_list_v< IndexPairs... >> * = nullptr> |
| | Range (const IndexPairs... bounds) |
| |
| | Range (const Range_ &other)=default |
| | Copy Constructor. More...
|
| |
| | Range (Range_ &&other) |
| | Move Constructor. More...
|
| |
| | Range (const Permutation &perm, const Range_ &other) |
| | Permuting copy constructor. More...
|
| |
| | ~Range ()=default |
| | Destructor. More...
|
| |
| Range_ & | operator= (const Range_ &other)=default |
| | Copy assignment operator. More...
|
| |
| Range_ & | operator= (Range_ &&other) |
| | Move assignment operator. More...
|
| |
| | operator bool () const |
| | Conversion to bool. More...
|
| |
| unsigned int | rank () const |
| | Rank accessor. More...
|
| |
| std::pair< index1_type, index1_type > | dim (std::size_t d) const |
| | Accessor of the d-th dimension of the range. More...
|
| |
| const index1_type * | lobound_data () const |
| | Range lower bound data accessor. More...
|
| |
| index_view_type | lobound () const |
| | Range lower bound accessor. More...
|
| |
| index1_type | lobound (size_t dim) const |
| | Range lower bound element accessor. More...
|
| |
| const index1_type * | upbound_data () const |
| | Range upper bound data accessor. More...
|
| |
| index_view_type | upbound () const |
| | Range upper bound accessor. More...
|
| |
| index1_type | upbound (size_t dim) const |
| | Range upped bound element accessor. More...
|
| |
| const index1_type * | extent_data () const |
| | Range extent data accessor. More...
|
| |
| index_view_type | extent () const |
| | Range extent accessor. More...
|
| |
| index1_type | extent (size_t dim) const |
| | Range extent element accessor. More...
|
| |
| const index1_type * | stride_data () const |
| | Range stride data accessor. More...
|
| |
| index_view_type | stride () const |
| | Range stride accessor. More...
|
| |
| index1_type | stride (size_t dim) const |
| | Range stride element accessor. More...
|
| |
| ordinal_type | volume () const |
| | Range volume accessor. More...
|
| |
| ordinal_type | area () const |
| |
| distance_type | offset () const |
| | Range offset. More...
|
| |
| const_iterator | begin () const |
| | Index iterator factory. More...
|
| |
| const_iterator | end () const |
| | Index iterator factory. More...
|
| |
| template<typename Index , typename std::enable_if< detail::is_integral_range_v< Index >, bool >::type * = nullptr> |
| bool | includes (const Index &index) const |
| | Check the coordinate to make sure it is within the range. More...
|
| |
| template<typename Index , typename = std::enable_if_t<std::is_integral_v<Index>>> |
| bool | includes (const std::initializer_list< Index > &index) const |
| | Check the coordinate to make sure it is within the range. More...
|
| |
| template<typename Ordinal > |
| std::enable_if< std::is_integral_v< Ordinal >, bool >::type | includes (Ordinal i) const |
| | Check the ordinal index to make sure it is within the range. More...
|
| |
| template<typename... Index> |
| std::enable_if_t<(sizeof...(Index) > 1ul) &&(std::is_integral_v< Index > &&...), bool > | includes (const Index &... index) const |
| |
| Range_ & | operator*= (const Permutation &perm) |
| | Permute this range. More...
|
| |
| template<typename Index1 , typename Index2 , typename = std::enable_if_t<detail::is_integral_sized_range_v<Index1> && detail::is_integral_sized_range_v<Index2>>> |
| Range_ & | resize (const Index1 &lower_bound, const Index2 &upper_bound) |
| | Resize range to a new upper and lower bound. More...
|
| |
| template<typename Index , typename = std::enable_if_t<detail::is_integral_range_v<Index>>> |
| Range_ & | inplace_shift (const Index &bound_shift) |
| | Shift the lower and upper bound of this range. More...
|
| |
| template<typename Index , typename = std::enable_if_t<std::is_integral_v<Index>>> |
| Range_ & | inplace_shift (const std::initializer_list< Index > &bound_shift) |
| | Shift the lower and upper bound of this range. More...
|
| |
| template<typename Index , typename = std::enable_if_t<detail::is_integral_range_v<Index>>> |
| Range_ | shift (const Index &bound_shift) |
| | Create a Range with shiften lower and upper bounds. More...
|
| |
| template<typename Index , typename = std::enable_if_t<std::is_integral_v<Index>>> |
| Range_ | shift (const std::initializer_list< Index > &bound_shift) |
| | Create a Range with shiften lower and upper bounds. More...
|
| |
| ordinal_type | ordinal (const ordinal_type index) const |
| | calculate the ordinal index of i More...
|
| |
| template<typename Index , typename std::enable_if_t< detail::is_integral_range_v< Index >> * = nullptr> |
| ordinal_type | ordinal (const Index &index) const |
| | calculate the ordinal index of index More...
|
| |
| template<typename Index , typename = std::enable_if_t<std::is_integral_v<Index>>> |
| ordinal_type | ordinal (const std::initializer_list< Index > &index) const |
| | calculate the ordinal index of index More...
|
| |
| template<typename... Index, typename std::enable_if_t<(sizeof...(Index) > 1ul) &&(std::is_integral_v< Index > &&...)> * = nullptr> |
| ordinal_type | ordinal (const Index &... index) const |
| | calculate the ordinal index of index More...
|
| |
| index_type | idx (ordinal_type index) const |
| | calculate the coordinate index of the ordinal index, index. More...
|
| |
| template<typename Index , typename std::enable_if_t< detail::is_integral_range_v< Index >> * = nullptr> |
| const Index & | idx (const Index &i) const |
| | calculate the index of i More...
|
| |
| template<typename Archive > |
| void | serialize (Archive &ar) |
| |
| void | swap (Range_ &other) |
| |