coveo::linq
Implementation of .NET-like LINQ operators in C++
Public Types | List of all members
coveo::seq_traits< Seq > Struct Template Reference

Traits class for a sequence. More...

Inheritance diagram for coveo::seq_traits< Seq >:
coveo::seq_element_traits< decltype(*std::begin(std::declval< Seq & >()))>

Public Types

using iterator_type = typename std::decay< decltype(std::begin(std::declval< Seq & >()))>::type
 Type of iterator used by the sequence. More...
 
- Public Types inherited from coveo::seq_element_traits< decltype(*std::begin(std::declval< Seq & >()))>
using value_type = decltype(*::(::< & > Seq
 Type of element in the sequence. More...
 
using const_value_type = const value_type
 Type of element in the sequence, but const. More...
 
using raw_value_type = typename std::remove_cv< value_type >::type
 Raw type of element in the sequence. More...
 
using pointer = value_type *
 Pointer to a sequence element. More...
 
using reference = value_type &
 Reference to a sequence element. More...
 
using const_pointer = const_value_type *
 Pointer to a const sequence element. More...
 
using const_reference = const_value_type &
 Reference to a const sequence element. More...
 

Detailed Description

template<typename Seq>
struct coveo::seq_traits< Seq >

Traits class containing definitions pertaining to a sequence. A shorthand for coveo::seq_element_traits that infers the sequence's value_type from the return value of its iterators. Also provides the type of iterator used by the sequence.

Template Parameters
SeqType of sequence.

Member Typedef Documentation

◆ iterator_type

template<typename Seq>
using coveo::seq_traits< Seq >::iterator_type = typename std::decay<decltype(std::begin(std::declval<Seq&>()))>::type

Type of iterator used by the sequence, which is defined as the type of iterator returned when calling std::begin().


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