sparrow 0.6.0
Loading...
Searching...
No Matches
sparrow::ranges::copy_fn Struct Reference

Copies the elements from the input range to the output iterator. More...

#include <ranges.hpp>

Public Member Functions

template<std::input_iterator I, std::sentinel_for< I > S, std::weakly_incrementable O>
requires std::indirectly_copyable<I, O>
constexpr std::ranges::copy_result< I, O > operator() (I first, S last, O result) const
 
template<std::ranges::input_range R, std::weakly_incrementable O>
requires std::indirectly_copyable<std::ranges::iterator_t<R>, O>
constexpr std::ranges::copy_result< std::ranges::borrowed_iterator_t< R >, O > operator() (R &&r, O result) const
 

Detailed Description

Copies the elements from the input range to the output iterator.

: Implementation from https://en.cppreference.com/w/cpp/algorithm/ranges/copy This function is used because the implementation of std::ranges::copy is missing in GCC 12.

Definition at line 87 of file ranges.hpp.

Member Function Documentation

◆ operator()() [1/2]

template<std::input_iterator I, std::sentinel_for< I > S, std::weakly_incrementable O>
requires std::indirectly_copyable<I, O>
std::ranges::copy_result< I, O > sparrow::ranges::copy_fn::operator() ( I first,
S last,
O result ) const
inlineconstexpr

Definition at line 91 of file ranges.hpp.

◆ operator()() [2/2]

template<std::ranges::input_range R, std::weakly_incrementable O>
requires std::indirectly_copyable<std::ranges::iterator_t<R>, O>
std::ranges::copy_result< std::ranges::borrowed_iterator_t< R >, O > sparrow::ranges::copy_fn::operator() ( R && r,
O result ) const
inlineconstexpr

Definition at line 110 of file ranges.hpp.


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