LLVM 22.0.0git
llvm::detail::concat_range< ValueT, RangeTs > Class Template Reference

Helper to store a sequence of ranges being concatenated and access them. More...

#include "llvm/ADT/STLExtras.h"

Public Types

using iterator

Public Member Functions

 concat_range (RangeTs &&... Ranges)
iterator begin ()
iterator begin () const
iterator end ()
iterator end () const

Detailed Description

template<typename ValueT, typename... RangeTs>
class llvm::detail::concat_range< ValueT, RangeTs >

Helper to store a sequence of ranges being concatenated and access them.

This is designed to facilitate providing actual storage when temporaries are passed into the constructor such that we can use it as part of range based for loops.

Definition at line 1101 of file STLExtras.h.

Member Typedef Documentation

◆ iterator

template<typename ValueT, typename... RangeTs>
using llvm::detail::concat_range< ValueT, RangeTs >::iterator
Initial value:
decltype(adl_begin(std::declval<RangeTs &>()))...>
Iterator wrapper that concatenates sequences together.
Definition STLExtras.h:1001
constexpr auto adl_begin(RangeT &&range) -> decltype(adl_detail::begin_impl(std::forward< RangeT >(range)))
Returns the begin iterator to range using std::begin and function found through Argument-Dependent Lo...
Definition ADL.h:78

Definition at line 1103 of file STLExtras.h.

Constructor & Destructor Documentation

◆ concat_range()

template<typename ValueT, typename... RangeTs>
llvm::detail::concat_range< ValueT, RangeTs >::concat_range ( RangeTs &&... Ranges)
inline

Definition at line 1127 of file STLExtras.h.

Member Function Documentation

◆ begin() [1/2]

template<typename ValueT, typename... RangeTs>
iterator llvm::detail::concat_range< ValueT, RangeTs >::begin ( )
inline

Definition at line 1130 of file STLExtras.h.

◆ begin() [2/2]

template<typename ValueT, typename... RangeTs>
iterator llvm::detail::concat_range< ValueT, RangeTs >::begin ( ) const
inline

Definition at line 1133 of file STLExtras.h.

◆ end() [1/2]

template<typename ValueT, typename... RangeTs>
iterator llvm::detail::concat_range< ValueT, RangeTs >::end ( )
inline

Definition at line 1136 of file STLExtras.h.

◆ end() [2/2]

template<typename ValueT, typename... RangeTs>
iterator llvm::detail::concat_range< ValueT, RangeTs >::end ( ) const
inline

Definition at line 1139 of file STLExtras.h.


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