26 lines
979 B
C++
26 lines
979 B
C++
/// @file dpf/sequence_utils.hpp
|
|
/// @brief Tags that select how `eval_sequence` stores each visited leaf.
|
|
/// @copyright Copyright (c) 2019-2026 Ryan Henry and [others](@ref authors)
|
|
/// @license Released under a GNU General Public v2.0 (GPLv2) license.
|
|
|
|
#ifndef LIBDPF_INCLUDE_DPF_SEQUENCE_UTILS_HPP__
|
|
#define LIBDPF_INCLUDE_DPF_SEQUENCE_UTILS_HPP__
|
|
|
|
namespace dpf
|
|
{
|
|
|
|
/// @brief Tag base for `eval_sequence` storage layout.
|
|
struct return_type_tag_{};
|
|
|
|
/// @brief Store whole leaves. Default for `eval_sequence`. The iterable still
|
|
/// yields one share per listed point.
|
|
struct return_entire_node_tag_ final : public return_type_tag_ {};
|
|
// static constexpr auto return_entire_node_tag = return_entire_node_tag_{};
|
|
|
|
/// @brief Store one share per listed point.
|
|
struct return_output_only_tag_ final : public return_type_tag_ {};
|
|
// static constexpr auto return_output_only_tag = return_output_only_tag_{};
|
|
|
|
} // namespace dpf
|
|
|
|
#endif // LIBDPF_INCLUDE_DPF_SEQUENCE_UTILS_HPP__
|