Loading [MathJax]/jax/output/HTML-CSS/config.js
Iros
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages Concepts
Loading...
Searching...
No Matches
di::concepts::detail Namespace Reference

Classes

struct  CanStructuredBindHelper
 
struct  CanStructuredBindHelper< T, meta::ListV< indices... > >
 
struct  CheckTypeAliasExists
 
struct  ContainsF
 
struct  DefinitelyEqualityComparableWith
 
struct  DefinitelyEqualityComparableWith< serialization::json::Array, serialization::json::Array >
 
struct  DefinitelyEqualityComparableWith< serialization::json::KeyValue, serialization::json::KeyValue >
 
struct  DefinitelyEqualityComparableWith< serialization::json::Object, serialization::json::Object >
 
struct  DefinitelyEqualityComparableWith< serialization::json::Value, serialization::json::Value >
 
struct  DefinitelyThreeWayComparableWith
 
struct  DefinitelyThreeWayComparableWith< serialization::json::Array, serialization::json::Array >
 
struct  DefinitelyThreeWayComparableWith< serialization::json::KeyValue, serialization::json::KeyValue >
 
struct  DefinitelyThreeWayComparableWith< serialization::json::Object, serialization::json::Object >
 
struct  DefinitelyThreeWayComparableWith< serialization::json::Value, serialization::json::Value >
 
class  FlippedHelper
 
struct  MonadBindId
 
struct  MonadFmapId
 
struct  MonadValue
 
struct  MonadValue< Monad< T, Args... > >
 
struct  SenderOfHelper
 
struct  SenderOfHelper< R(As...)>
 
struct  TriviallyRelocatableFunction
 
struct  TupleLikeHelper
 
struct  TupleLikeHelper< T, meta::ListV< indices... > >
 
struct  VariantLikeHelper
 
struct  VariantLikeHelper< T, meta::ListV< indices... > >
 

Concepts

concept  VTableValidFor
 
concept  IndirectlyBinaryLeftFoldableHelper
 
concept  IndirectlyReadableHelper
 
concept  ConstantRing
 
concept  MutableRing
 
concept  ConstantString
 
concept  MutableString
 
concept  ConstantVector
 
concept  MutableVector
 
concept  ValidCompletionFor
 
concept  AdaptableToSequence
 
concept  ComparesAs
 
concept  WeaklyEqualityComparableWith
 
concept  PartiallyOrderedWith
 
concept  WeaklyThreeWayComparableWith
 
concept  DestructibleHelper
 
concept  BooleanTestableImpl
 
concept  StrictWeakOrderCategory
 
concept  ComparisonCategory
 
concept  InvocableToStrictWeakOrder
 
concept  InvocableToComparisonCategory
 
concept  StatusCodeErasableIntoHelper
 
concept  ExpectedCanConvertConstructor
 
concept  IsMappingOf
 
concept  HasMemberGet
 
concept  CanStructuredBind
 
concept  HasTupleElement
 
concept  HasTupleGet
 
concept  HasVariantAlernative
 
concept  HasVariantGet
 

Functions

template<typename Awaitable>
auto get_awaiter (Awaitable &&awaitable, void *) -> decltype(auto)
 
template<typename Awaitable, typename Promise>
auto get_awaiter (Awaitable &&awaitable, Promise *promise) -> decltype(auto) requires(
 
template<typename Promise, typename Awaiter>
auto do_await_suspend (Awaiter &awaiter) -> decltype(auto)
 

Variables

template<typename T, typename I>
constexpr bool impl_helper = false
 
template<typename T, typename... Methods>
constexpr bool impl_helper< T, meta::List< Methods... > > = (MethodCallableWith<meta::Type<Methods>, T> && ...)
 
template<typename M, typename T>
constexpr bool method_callable_with_helper = false
 
template<typename Tag, typename R, concepts::RemoveCVRefSameAs< This > Self, typename... BArgs, typename T>
constexpr bool method_callable_with_helper< types::Method< Tag, R(Self, BArgs...)>, T >
 
template<typename T>
constexpr bool is_completion_signature = false
 
template<typename... Args>
constexpr bool is_completion_signature< execution::SetValue(Args...)> = true
 
template<typename Arg>
constexpr bool is_completion_signature< execution::SetError(Arg)> = true
 
template<>
constexpr bool is_completion_signature< execution::SetStopped()> = true
 
template<typename T, typename L>
constexpr bool ReceiverOfHelper = false
 
template<typename T, typename... Types>
constexpr bool ReceiverOfHelper< T, types::CompletionSignatures< Types... > >
 
template<typename T>
constexpr bool constexpr_helper = false
 
template<auto val, typename T>
constexpr bool constexpr_helper< meta::Constexpr< val, T > > = true
 
template<typename T, typename U>
constexpr auto same_as_helper = false
 
template<typename T>
constexpr auto same_as_helper< T, T > = true
 
template<typename T>
constexpr bool language_void_helper = false
 
template<>
constexpr bool language_void_helper< void > = true
 
template<typename T, template< typename... > typename Template>
constexpr bool instance_of_helper = false
 
template<typename... Types, template< typename... > typename Template>
constexpr bool instance_of_helper< Template< Types... >, Template > = true
 
template<typename T, template< auto... > typename Template>
constexpr bool instance_of_v_helper = false
 
template<auto... values, template< auto... > typename Template>
constexpr bool instance_of_v_helper< Template< values... >, Template > = true
 
template<typename T, template< template< typename... > typename... > typename Template>
constexpr bool instance_of_template_helper = false
 
template<template< typename... > typename... Templates, template< template< typename... > typename... > typename Template>
constexpr bool instance_of_template_helper< Template< Templates... >, Template > = true
 
template<typename T>
constexpr bool const_helper = false
 
template<typename T>
constexpr bool const_helper< T const > = true
 
template<typename T>
constexpr bool lvalue_reference_helper = false
 
template<typename T>
constexpr bool lvalue_reference_helper< T & > = true
 
template<typename T>
constexpr bool rvalue_reference_helper = false
 
template<typename T>
constexpr bool rvalue_reference_helper< T && > = true
 
template<typename T>
constexpr bool pointer_helper = false
 
template<typename T>
constexpr bool pointer_helper< T * > = true
 
template<typename T>
constexpr bool bounded_language_array_helper = false
 
template<typename T, usize N>
constexpr bool bounded_language_array_helper< T[N]> = true
 
template<typename T>
constexpr bool unbounded_language_array_helper = false
 
template<typename T>
constexpr bool unbounded_language_array_helper< T[]> = true
 
template<typename T>
constexpr bool member_pointer_helper = false
 
template<typename T, typename U>
constexpr bool member_pointer_helper< T U::* > = true
 
template<typename From, typename To>
constexpr bool qualification_convertible_to = SameAs<From, To>
 
template<typename From, typename To>
constexpr bool qualification_convertible_to< From, To const > = SameAs<meta::RemoveConst<From>, To>
 
template<typename From, typename To>
constexpr bool qualification_convertible_to< From, To volatile > = SameAs<meta::RemoveVolatile<From>, To>
 
template<typename From, typename To>
constexpr bool qualification_convertible_to< From, To const volatile > = SameAs<meta::RemoveCV<From>, To>
 
template<typename T>
constexpr bool array_helper = false
 
template<typename T, usize size>
constexpr bool array_helper< vocab::Array< T, size > > = true
 
template<typename T>
constexpr bool span_helper = false
 
template<typename T, usize extent>
constexpr bool span_helper< vocab::Span< T, extent > > = true
 
template<typename T>
constexpr bool erased_status_code_helper = false
 
template<typename T>
constexpr bool erased_status_code_helper< vocab::StatusCode< vocab::Erased< T > > > = true
 
template<typename T>
constexpr bool extents_helper = false
 
template<typename T, usize... ins>
constexpr bool extents_helper< vocab::Extents< T, ins... > > = true
 

Function Documentation

◆ do_await_suspend()

template<typename Promise, typename Awaiter>
auto di::concepts::detail::do_await_suspend ( Awaiter & awaiter) -> decltype(auto)

◆ get_awaiter() [1/2]

template<typename Awaitable, typename Promise>
auto di::concepts::detail::get_awaiter ( Awaitable && awaitable,
Promise * promise ) -> decltype(auto) requires(

◆ get_awaiter() [2/2]

template<typename Awaitable>
auto di::concepts::detail::get_awaiter ( Awaitable && awaitable,
void *  ) -> decltype(auto)

Variable Documentation

◆ array_helper

template<typename T>
bool di::concepts::detail::array_helper = false
inlineconstexpr

◆ array_helper< vocab::Array< T, size > >

template<typename T, usize size>
bool di::concepts::detail::array_helper< vocab::Array< T, size > > = true
inlineconstexpr

◆ bounded_language_array_helper

template<typename T>
bool di::concepts::detail::bounded_language_array_helper = false
inlineconstexpr

◆ bounded_language_array_helper< T[N]>

template<typename T, usize N>
bool di::concepts::detail::bounded_language_array_helper< T[N]> = true
inlineconstexpr

◆ const_helper

template<typename T>
bool di::concepts::detail::const_helper = false
inlineconstexpr

◆ const_helper< T const >

template<typename T>
bool di::concepts::detail::const_helper< T const > = true
inlineconstexpr

◆ constexpr_helper

template<typename T>
bool di::concepts::detail::constexpr_helper = false
inlineconstexpr

◆ constexpr_helper< meta::Constexpr< val, T > >

template<auto val, typename T>
bool di::concepts::detail::constexpr_helper< meta::Constexpr< val, T > > = true
inlineconstexpr

◆ erased_status_code_helper

template<typename T>
bool di::concepts::detail::erased_status_code_helper = false
inlineconstexpr

◆ erased_status_code_helper< vocab::StatusCode< vocab::Erased< T > > >

template<typename T>
bool di::concepts::detail::erased_status_code_helper< vocab::StatusCode< vocab::Erased< T > > > = true
inlineconstexpr

◆ extents_helper

template<typename T>
bool di::concepts::detail::extents_helper = false
inlineconstexpr

◆ extents_helper< vocab::Extents< T, ins... > >

template<typename T, usize... ins>
bool di::concepts::detail::extents_helper< vocab::Extents< T, ins... > > = true
inlineconstexpr

◆ impl_helper

template<typename T, typename I>
bool di::concepts::detail::impl_helper = false
inlineconstexpr

◆ impl_helper< T, meta::List< Methods... > >

template<typename T, typename... Methods>
bool di::concepts::detail::impl_helper< T, meta::List< Methods... > > = (MethodCallableWith<meta::Type<Methods>, T> && ...)
inlineconstexpr

◆ instance_of_helper

template<typename T, template< typename... > typename Template>
bool di::concepts::detail::instance_of_helper = false
inlineconstexpr

◆ instance_of_helper< Template< Types... >, Template >

template<typename... Types, template< typename... > typename Template>
bool di::concepts::detail::instance_of_helper< Template< Types... >, Template > = true
inlineconstexpr

◆ instance_of_template_helper

template<typename T, template< template< typename... > typename... > typename Template>
bool di::concepts::detail::instance_of_template_helper = false
inlineconstexpr

◆ instance_of_template_helper< Template< Templates... >, Template >

template<template< typename... > typename... Templates, template< template< typename... > typename... > typename Template>
bool di::concepts::detail::instance_of_template_helper< Template< Templates... >, Template > = true
inlineconstexpr

◆ instance_of_v_helper

template<typename T, template< auto... > typename Template>
bool di::concepts::detail::instance_of_v_helper = false
inlineconstexpr

◆ instance_of_v_helper< Template< values... >, Template >

template<auto... values, template< auto... > typename Template>
bool di::concepts::detail::instance_of_v_helper< Template< values... >, Template > = true
inlineconstexpr

◆ is_completion_signature

template<typename T>
bool di::concepts::detail::is_completion_signature = false
inlineconstexpr

◆ is_completion_signature< execution::SetError(Arg)>

template<typename Arg>
bool di::concepts::detail::is_completion_signature< execution::SetError(Arg)> = true
inlineconstexpr

◆ is_completion_signature< execution::SetStopped()>

template<>
bool di::concepts::detail::is_completion_signature< execution::SetStopped()> = true
inlineconstexpr

◆ is_completion_signature< execution::SetValue(Args...)>

template<typename... Args>
bool di::concepts::detail::is_completion_signature< execution::SetValue(Args...)> = true
inlineconstexpr

◆ language_void_helper

template<typename T>
bool di::concepts::detail::language_void_helper = false
inlineconstexpr

◆ language_void_helper< void >

template<>
bool di::concepts::detail::language_void_helper< void > = true
inlineconstexpr

◆ lvalue_reference_helper

template<typename T>
bool di::concepts::detail::lvalue_reference_helper = false
inlineconstexpr

◆ lvalue_reference_helper< T & >

template<typename T>
bool di::concepts::detail::lvalue_reference_helper< T & > = true
inlineconstexpr

◆ member_pointer_helper

template<typename T>
bool di::concepts::detail::member_pointer_helper = false
inlineconstexpr

◆ member_pointer_helper< T U::* >

template<typename T, typename U>
bool di::concepts::detail::member_pointer_helper< T U::* > = true
inlineconstexpr

◆ method_callable_with_helper

template<typename M, typename T>
bool di::concepts::detail::method_callable_with_helper = false
inlineconstexpr

◆ method_callable_with_helper< types::Method< Tag, R(Self, BArgs...)>, T >

template<typename Tag, typename R, concepts::RemoveCVRefSameAs< This > Self, typename... BArgs, typename T>
bool di::concepts::detail::method_callable_with_helper< types::Method< Tag, R(Self, BArgs...)>, T >
inlineconstexpr
Initial value:
=
TagInvocableTo<Tag const&, R, types::Method<Tag, R(Self, BArgs...)>, meta::Like<Self, T>, BArgs...> ||
Definition invoke.h:69
Definition tag_invoke.h:45
Type< detail::LikeHelper< T, U > > Like
Definition language.h:468
di::meta::Decay< decltype(T)> Tag
Definition tag_invoke.h:28
Definition method.h:7

◆ pointer_helper

template<typename T>
bool di::concepts::detail::pointer_helper = false
inlineconstexpr

◆ pointer_helper< T * >

template<typename T>
bool di::concepts::detail::pointer_helper< T * > = true
inlineconstexpr

◆ qualification_convertible_to

template<typename From, typename To>
bool di::concepts::detail::qualification_convertible_to = SameAs<From, To>
inlineconstexpr

◆ qualification_convertible_to< From, To const >

template<typename From, typename To>
bool di::concepts::detail::qualification_convertible_to< From, To const > = SameAs<meta::RemoveConst<From>, To>
inlineconstexpr

◆ qualification_convertible_to< From, To const volatile >

template<typename From, typename To>
bool di::concepts::detail::qualification_convertible_to< From, To const volatile > = SameAs<meta::RemoveCV<From>, To>
inlineconstexpr

◆ qualification_convertible_to< From, To volatile >

template<typename From, typename To>
bool di::concepts::detail::qualification_convertible_to< From, To volatile > = SameAs<meta::RemoveVolatile<From>, To>
inlineconstexpr

◆ ReceiverOfHelper

template<typename T, typename L>
bool di::concepts::detail::ReceiverOfHelper = false
inlineconstexpr

◆ ReceiverOfHelper< T, types::CompletionSignatures< Types... > >

template<typename T, typename... Types>
bool di::concepts::detail::ReceiverOfHelper< T, types::CompletionSignatures< Types... > >
inlineconstexpr
Initial value:

◆ rvalue_reference_helper

template<typename T>
bool di::concepts::detail::rvalue_reference_helper = false
inlineconstexpr

◆ rvalue_reference_helper< T && >

template<typename T>
bool di::concepts::detail::rvalue_reference_helper< T && > = true
inlineconstexpr

◆ same_as_helper

template<typename T, typename U>
auto di::concepts::detail::same_as_helper = false
inlineconstexpr

◆ same_as_helper< T, T >

template<typename T>
auto di::concepts::detail::same_as_helper< T, T > = true
inlineconstexpr

◆ span_helper

template<typename T>
bool di::concepts::detail::span_helper = false
inlineconstexpr

◆ span_helper< vocab::Span< T, extent > >

template<typename T, usize extent>
bool di::concepts::detail::span_helper< vocab::Span< T, extent > > = true
inlineconstexpr

◆ unbounded_language_array_helper

template<typename T>
bool di::concepts::detail::unbounded_language_array_helper = false
inlineconstexpr

◆ unbounded_language_array_helper< T[]>

template<typename T>
bool di::concepts::detail::unbounded_language_array_helper< T[]> = true
inlineconstexpr