Loading...
Searching...
No Matches
adaptor_for_view_without_args.hpp
Go to the documentation of this file.
// SPDX-FileCopyrightText: 2006-2025 Knut Reinert & Freie Universität Berlin
// SPDX-FileCopyrightText: 2016-2025 Knut Reinert & MPI für molekulare Genetik
// SPDX-License-Identifier: BSD-3-Clause
#pragma once
#include <seqan3/core/range/detail/adaptor_base.hpp>
namespace seqan3::detail
{
// ============================================================================
// adaptor_for_view_without_args
// ============================================================================
template <template <typename, typename...> typename view_type>
class adaptor_for_view_without_args : public adaptor_base<adaptor_for_view_without_args<view_type>>
{
private:
using base_type = adaptor_base<adaptor_for_view_without_args<view_type>>;
friend base_type;
template <typename... arg_types>
static auto impl(arg_types &&... args)
{
return view_type{std::forward<arg_types>(args)...};
}
public:
constexpr adaptor_for_view_without_args() = default;
constexpr adaptor_for_view_without_args(adaptor_for_view_without_args const &) noexcept = default;
constexpr adaptor_for_view_without_args(adaptor_for_view_without_args &&) noexcept = default;
constexpr adaptor_for_view_without_args & operator=(adaptor_for_view_without_args const &) noexcept = default;
constexpr adaptor_for_view_without_args & operator=(adaptor_for_view_without_args &&) noexcept = default;
~adaptor_for_view_without_args() noexcept = default;
using base_type::base_type;
};
} // namespace seqan3::detail
adaptor_base.hpp
Provides seqan3::detail::adaptor_base and seqan3::detail::combined_adaptor.
std::forward
T forward(T... args)
Hide me