SeqAn3 3.3.0-rc.1
The Modern C++ library for sequence analysis.
seqan3::detail::to_fn< container_t > Struct Template Reference

Function object to convert a std::ranges::input_range to a fully defined container. More...

#include <seqan3/utility/range/to.hpp>

Public Member Functions

template<std::ranges::input_range rng_t, typename... args_t>
constexpr auto operator() (rng_t &&rng, args_t &&... args) const
 Converts a template-template into a container. More...
 

Private Member Functions

template<std::ranges::input_range rng_t>
requires std::convertible_to<std::ranges::range_reference_t<rng_t>, std::ranges::range_value_t<container_t>>
auto impl (rng_t &&rng, container_t &container) const
 Copies a range into a container. More...
 
template<std::ranges::input_range rng_t>
requires std::ranges::input_range<std::ranges::range_value_t<rng_t>>
auto impl (rng_t &&rng, container_t &container) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 

Detailed Description

template<typename container_t>
requires (!std::ranges::view<container_t>)
struct seqan3::detail::to_fn< container_t >

Function object to convert a std::ranges::input_range to a fully defined container.

Member Function Documentation

◆ impl()

template<typename container_t >
template<std::ranges::input_range rng_t>
requires std::convertible_to<std::ranges::range_reference_t<rng_t>, std::ranges::range_value_t<container_t>>
auto seqan3::detail::to_fn< container_t >::impl ( rng_t &&  rng,
container_t &  container 
) const
inlineprivate

Copies a range into a container.

Template Parameters
rng_tType of the range.
container_tType of the target container.

◆ operator()()

template<typename container_t >
template<std::ranges::input_range rng_t, typename... args_t>
constexpr auto seqan3::detail::to_fn< container_t >::operator() ( rng_t &&  rng,
args_t &&...  args 
) const
inlineconstexpr

Converts a template-template into a container.

Template Parameters
rng_tThe type of the range being processed.
args_tThe types of the arguments for the constructor.
Parameters
rngThe range being processed.
argsArguments to pass to the constructor of the container.

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