![]() |
Home | Libraries | People | FAQ | More |
The type of range produced by sequence.
Defined in header <boost/mysql/sequence.hpp>
template< class T> using sequence_range_t = see-below;
This type trait can be used to obtain the range type produced by calling
sequence.
This type is used as the Range
template parameter in format_sequence.
By default, sequence copies its input range,
unless using std::ref. C arrays are copied into std::array
objects. This type trait accounts these transformations.
Formally, given the input range type T
(which can be a reference with cv-qualifiers):
T is a C array or
a reference to one (as per std::is_array),
and the array elements' type is U,
yields std::array<std::remove_cv_t<U>, N>.
T is a std::reference_wrapper<U>
object, or a reference to one, yields U&.
std::remove_cvref_t<T>.
Examples:
sequence_range_t<const std::vector<int>&> is std::vector<int>.
sequence_range_t<std::reference_wrapper<std::vector<int>>>
is std::vector<int>&.
sequence_range_t<std::reference_wrapper<const std::vector<int>>> is const
std::vector<int>&.
sequence_range_t<int(&)[4]>
is std::array<int, 4>.
Convenience header <boost/mysql.hpp>