tagval 0.2.0
Modern C++23 header-only library of tagged values (open/closed enumerations with metadata)
Loading...
Searching...
No Matches
values.hpp File Reference

Compile-time list of Entry types for ClosedEnded kinds. More...

#include <tagval/entry.hpp>
#include <array>
#include <concepts>
#include <cstddef>
#include <string_view>
#include <tuple>
+ Include dependency graph for values.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  tagval::Values< Entries >
 Compile-time tuple of Entry types belonging to a single Owner. More...
 

Namespaces

namespace  tagval
 
namespace  tagval::detail
 

Functions

template<typename... Es>
consteval bool tagval::detail::all_codes_unique () noexcept
 
template<typename... Es>
constexpr auto tagval::detail::values_metadata_array_impl (std::tuple< Es... > *)
 
template<typename... Es>
constexpr auto tagval::detail::values_metadata_pointers_impl (std::tuple< Es... > *)
 
template<typename V >
constexpr auto tagval::values_metadata_array ()
 Materialize the metadata array for a Values<...> list.
 
template<typename V >
constexpr auto tagval::values_metadata_pointers ()
 Materialize an array of pointers to the pinned metadata_v<E> constants for a Values<...> list.
 

Detailed Description

Compile-time list of Entry types for ClosedEnded kinds.