SeqAn3
3.0.3
The Modern C++ library for sequence analysis.
move.hpp
Go to the documentation of this file.
1
// -----------------------------------------------------------------------------------------------------
2
// Copyright (c) 2006-2020, Knut Reinert & Freie Universität Berlin
3
// Copyright (c) 2016-2020, Knut Reinert & MPI für molekulare Genetik
4
// This file may be used, modified and/or redistributed under the terms of the 3-clause BSD-License
5
// shipped with this file and also available at: https://github.com/seqan/seqan3/blob/master/LICENSE.md
6
// -----------------------------------------------------------------------------------------------------
7
13
#pragma once
14
15
#include <
seqan3/std/ranges
>
16
#include <
seqan3/std/type_traits
>
17
18
#include <
seqan3/utility/detail/multi_invocable.hpp
>
19
20
namespace
seqan3::views
21
{
22
70
inline
auto
const
move
=
std::views::transform
(detail::multi_invocable
71
{
72
[] (
auto
&& arg) ->
std::remove_cvref_t
<decltype(arg)> {
return
std::move
(arg); },
73
[] (
auto
& arg) -> decltype(
auto
) {
return
std::move
(arg); }
74
});
76
77
}
// namespace seqan3::views
seqan3::list_traits::transform
decltype(detail::transform< trait_t >(list_t{})) transform
Apply a transformation trait to every type in the list and return a seqan3::type_list of the results.
Definition:
traits.hpp:434
seqan3::views::move
auto const move
A view that turns lvalue-references into rvalue-references.
Definition:
move.hpp:70
multi_invocable.hpp
Provides a type that combines multiple invocables.
seqan3::views
The SeqAn namespace for views.
ranges
Adaptations of concepts from the Ranges TS.
std::remove_cvref_t
type_traits
Provides C++20 additions to the type_traits header.
seqan3
range
views
move.hpp
Generated on Tue Mar 23 2021 11:01:41 for SeqAn3 by
1.9.1