Sygaldry
Loading...
Searching...
No Matches
sygac-endpoints: Endpoint Concepts

Concepts

concept  sygaldry::has_range
 
concept  sygaldry::strict_similar_to
 
concept  sygaldry::similar_to
 
concept  sygaldry::has_value_variable
 
concept  sygaldry::has_value_method
 
concept  sygaldry::PersistentValue
 
concept  sygaldry::BoolishFlag
 
concept  sygaldry::UpdatedFlag
 
concept  sygaldry::Flag
 
concept  sygaldry::_occasional_value
 
concept  sygaldry::OccasionalValue
 
concept  sygaldry::Bang
 
concept  sygaldry::ClearableFlag
 
concept  sygaldry::has_value
 
concept  sygaldry::string_like
 
concept  sygaldry::array_like
 

Classes

struct  sygaldry::_element_type< T >
 
struct  sygaldry::_element_type< T >
 

Macros

#define tagged(TAG)
 

Typedefs

template<has_value T>
using sygaldry::value_t = std::remove_cvref_t< decltype(value_of(std::declval< T & >()))>
 
template<has_value T>
using sygaldry::element_t = typename _element_type< T >::type
 

Functions

template<has_range T>
constexpr auto sygaldry::get_range (const T &)
 
template<has_range T>
_consteval auto sygaldry::get_range ()
 
template<ClearableFlag T>
constexpr void sygaldry::clear_flag (T &t)
 
template<ClearableFlag T>
constexpr bool sygaldry::flag_state_of (T &t)
 
template<ClearableFlag T>
constexpr void sygaldry::set_flag (T &t)
 
template<has_value T>
auto & sygaldry::value_of (T &v)
 
template<has_value T>
const auto & sygaldry::value_of (const T &v)
 
template<has_value T>
auto & sygaldry::set_value (T &v, const auto &arg)
 
template<array_like T>
_consteval auto sygaldry::size ()
 
 sygaldry::tagged (write_only)
 
 sygaldry::tagged (session_data)
 
template<typename T >
void sygaldry::initialize_endpoint (T &ep)
 

Detailed Description

Macro Definition Documentation

◆ tagged

#define tagged (   TAG)
Value:
template<typename T> concept tagged_##TAG\
= std::is_enum_v<decltype(T::TAG)>\
|| std::is_enum_v<typename T::TAG>