di 0.1.0
Loading...
Searching...
No Matches
di Namespace Reference

Namespaces

namespace  concepts
namespace  any
namespace  meta
namespace  types
namespace  assert
namespace  bit
namespace  chrono
namespace  literals
namespace  chrono_duration_literals
namespace  cli
namespace  container
namespace  path_literals
namespace  path_view_literals
namespace  string_literals
namespace  string_view_literals
namespace  exec
namespace  execution
namespace  vocab
namespace  fmt
namespace  function
namespace  io
namespace  math
namespace  numbers
namespace  util
namespace  parser
namespace  constexpr_integral_literals
namespace  integral_literals
namespace  integral_set_literals
namespace  platform
namespace  random
namespace  reflection
namespace  serialization
namespace  base64_literals
namespace  json_literals
namespace  percent_encoded_literals
namespace  sync
namespace  test
namespace  uuid_literals

Classes

struct  Method
struct  This
class  BitSet
struct  BitEnum
struct  BitField
struct  BitFlag
class  BitStruct
class  BigEndian
class  LittleEndian
class  Duration
class  TimePoint
struct  AllocationResult
struct  FailAllocator
struct  FallibleAllocator
struct  InfallibleAllocator
struct  DefaultHasher
class  NodeHashMap
class  NodeHashMultiMap
class  NodeHashMultiSet
class  NodeHashSet
class  IntrusiveForwardList
struct  IntrusiveForwardListTag
class  IntrusiveForwardListNode
class  IntrusiveHashMultiSet
class  IntrusiveHashSet
struct  IntrusiveHashSetTag
class  IntrusiveList
struct  IntrusiveListTag
class  IntrusiveListNode
class  IntrusiveTreeMultiSet
class  IntrusiveTreeSet
struct  IntrusiveTreeSetTag
struct  DefaultSentinel
class  LinkedList
class  PriorityQueue
class  Queue
class  Stack
class  Ring
class  StaticRing
class  ErasedString
class  FixedString
class  Utf8StreamDecoder
class  Utf8StrictStreamDecoder
class  TreeMap
class  TreeMultiMap
class  TreeMultiSet
class  TreeSet
struct  BidirectionalIteratorTag
struct  ContiguousIteratorTag
struct  ElementsOf
struct  ForwardIteratorTag
struct  FromContainer
struct  InputIteratorTag
struct  RandomAccessIteratorTag
class  StaticVector
class  Vector
class  View
struct  InlineScheduler
class  RunLoop
class  Lazy
class  WithAwaitableSenders
struct  Protocol
struct  SetError
struct  SetStopped
struct  SetValue
struct  SequenceTag
struct  CompletionSignatures
struct  EmptyEnv
class  FormatParseContext
class  Styled
struct  AsBool
struct  BetweenExclusive
struct  BetweenInclusive
struct  BitAnd
struct  Compare
struct  CompareBackwards
class  Function
class  FunctionRef
struct  Curry
struct  CurryBack
struct  Dereference
struct  Equal
struct  EqualOrGreater
struct  EqualOrLess
class  Generator
struct  Greater
struct  Identity
struct  Less
struct  Minus
struct  Multiplies
struct  NotEqual
struct  Plus
class  SizeWriter
class  StringReader
class  StringWriter
class  VectorReader
class  VectorWriter
class  FixedSigned
 A fixed-width signed integer. More...
class  FixedUnsigned
 A fixed-width unsigned integer. More...
class  Checked
struct  NumericLimits
struct  Ratio
class  Rational
struct  Constexpr
 A wrapper for a constexpr value. More...
class  GenericDomain
class  UniformIntDistribution
class  LinearCongruentialEngine
struct  Atom
struct  Enumerator
struct  Enumerators
struct  Field
struct  Fields
class  Base64
class  BinaryDeserializer
 A deserializer for a simple binary format. More...
struct  BinaryFormat
class  BinarySerializer
 A serializer for a simple binary format. More...
class  JsonDeserializer
 A deserializer for the JSON format. More...
struct  JsonFormat
class  JsonSerializer
class  JsonSerializerConfig
class  PercentEncoded
 Helper class for performing percent encoding. More...
class  Atomic
class  AtomicRef
class  DumbConditionVariable
class  DumbSpinlock
class  ScopedLock
class  InPlaceStopCallback
class  InPlaceStopSource
class  InPlaceStopToken
class  NeverStopToken
class  Synchronized
struct  AdoptLock
struct  DeferLock
struct  TryToLock
class  UniqueLock
struct  InPlace
struct  InPlaceTemplate
struct  InPlaceType
struct  PiecewiseConstruct
struct  Void
class  Badge
class  DeferConstruct
class  GuardedReference
struct  Immovable
class  MovableBox
class  NamedArgument
 A helper class to simulate a single named argument. More...
class  NamedArguments
 A helper class for simulation named arguments in c++. More...
class  NonPropagatingCache
struct  NonCopyable
class  RebindableBox
class  ReferenceWrapper
class  ScopeExit
class  ScopeValueChange
struct  SelfPointer
class  SourceLocation
struct  StoreIf
class  StrongInt
class  UUID
struct  Array
class  StatusCode
class  StatusCodeDomain
class  StringError
class  Expected
class  Unexpected
class  DefaultAccessor
class  Extents
struct  LayoutLeft
struct  LayoutRight
struct  LayoutStride
class  MDSpan
class  Optional
struct  IntrusiveRefCount
class  Box
struct  DefaultDelete
struct  AdoptObject
class  IntrusivePtr
struct  RetainObject
struct  IntrusiveThreadUnsafeRefCount
class  Span
class  Tuple
class  Variant

Typedefs

using FormatColor = fmt::Color
using FormatBackgroundColor = fmt::BackgroundColor
using FormatEffect = fmt::Effect
using Base64View = Base64<di::Span<byte const>>
using PercentEncodedView = PercentEncoded<di::TransparentStringView>
template<typename Promise = void>
using CoroutineHandle = std::coroutine_handle<Promise>
using NoopCoroutineHandle = std::noop_coroutine_handle
using NoopCoroutinePromise = std::noop_coroutine_promise
using SuspendAlways = std::suspend_always
using SuspendNever = std::suspend_never
using ByteBuffer = vocab::byte_buffer::ByteBufferImpl<>
using ExclusiveByteBuffer = vocab::byte_buffer::ExclusiveByteBufferImpl<>
template<concepts::Interface UserInterface, concepts::AnyStorage Storage = HybridStorage<>, typename VTablePolicy = MaybeInlineVTable<3>>
using Any
template<concepts::Interface Interface, StorageCategory storage_category = StorageCategory::MoveOnly, size_t inline_size = 2 * sizeof(void*), size_t inline_align = alignof(void*), concepts::Allocator Alloc = platform::DefaultAllocator>
using AnyHybrid
template<concepts::Interface Interface, size_t inline_size = 2 * sizeof(void*), size_t inline_align = alignof(void*)>
using AnyInline
template<concepts::Interface Interface>
using AnyRef
template<concepts::Interface Interface, concepts::Allocator Alloc = platform::DefaultAllocator>
using AnyShared
template<concepts::Interface Interface, concepts::Allocator Alloc = platform::DefaultAllocator>
using AnyUnique
template<typename Self, concepts::LanguageFunction Sig, typename... Tags>
using Dispatcher
template<concepts::IntegralOrEnum T, Endian endian>
using StaticEndian
using Days
using Hours
using Microseconds
using Milliseconds
using Minutes
using Months
using Nanoseconds
using Picoseconds
using Seconds
using Years
template<concepts::Allocator Alloc, typename T = void>
using AllocatorResult
template<typename Tag>
using IntrusiveHashSetNode
template<typename Tag = DefaultIntrusiveTreeSetTag>
using IntrusiveTreeSetNode
using Path
using Utf8Path
using PathView
using Utf8PathView
using String
using TransparentString
using StringView
using TransparentStringView
using ZC16CString
using ZC16String
using ZC32CString
using ZC32String
using ZC8CString
using ZC8String
using ZCString
using ZCUString
using ZCWString
using ZString
using ZUString
using ZWString
using Stopped
template<typename Env = void, concepts::AnyStorage Storage = any::HybridStorage<any::StorageCategory::MoveOnly, 8 * sizeof(void*), alignof(void*)>, typename VTablePolicy = any::MaybeInlineVTable<3>>
using AnyOperationState
template<concepts::ValidCompletionSignatures Sigs, typename Env = void, concepts::AnyStorage Storage = any::InlineStorage<2 * sizeof(void*), alignof(void*)>, typename VTablePolicy = any::MaybeInlineVTable<3>>
using AnyReceiver
template<concepts::ValidCompletionSignatures Sigs, typename Env = void, concepts::AnyStorage Storage = any::HybridStorage<>, typename VTablePolicy = any::MaybeInlineVTable<3>, concepts::OperationState Op = AnyOperationState<>, typename Rec = AnyReceiver<detail::AnySigs<Sigs>>>
using AnySender
template<typename T = void>
using AnySenderOf
template<concepts::ClassType Self, concepts::Receiver Base = receiver_interface_ns::fake_receiver::FakeReceiver>
using ReceiverAdaptor
template<concepts::Allocator Alloc = platform::DefaultAllocator>
using CountingScope
 A scope that waits for all spawned senders to complete.
template<typename Ref, typename Value = void>
using AsyncGenerator
template<concepts::Encoding Enc, concepts::Formattable... Args>
using FormatStringImpl
template<typename... Ts>
using InvokeResult
template<typename Tag, typename... Args>
using TagInvokeResult
template<auto & T>
using Tag
using Reader
using Writer
using i128_fallback
using i256
using u128_fallback
using u256
template<detail::IsRatio A, detail::IsRatio B>
using RatioAdd
template<detail::IsRatio A, detail::IsRatio B>
using RatioDivide
template<detail::IsRatio A, detail::IsRatio B>
using RatioMultiply
template<detail::IsRatio A, detail::IsRatio B>
using RatioSubtract
template<detail::IsRatio A, detail::IsRatio B>
using RatioEqual
template<detail::IsRatio A, detail::IsRatio B>
using RatioGreater
template<detail::IsRatio A, detail::IsRatio B>
using RatioGreaterEqual
template<detail::IsRatio A, detail::IsRatio B>
using RatioLess
template<detail::IsRatio A, detail::IsRatio B>
using RatioLessEqual
template<detail::IsRatio A, detail::IsRatio B>
using RatioNotEqual
template<typename F, typename... Args>
using CallResult
using DefaultAllocator
using DefaultFallibleAllocator
using DefaultLock
using ThreadId
using MinstdRand
using MinstdRand0
template<concepts::Reflectable T>
using Reflect
template<concepts::DeserializationFormat S, typename T>
using DeserializeMetadata
template<typename S, typename T>
using DeserializeResult
template<concepts::SerializationFormat S, typename T>
using SerializeMetadata
template<typename S>
using SerializeResult
using Byte
using byte
using c16
using c32
using c8
using f32
using f64
using i16
using i32
using i64
using i8
using u16
using u32
using u64
using u8
using imax
using iptr
using isize
using umax
using uptr
using usize
using intptr_t
using nullptr_t
using ptrdiff_t
using size_t
using ssize_t
using uintptr_t
using Error
template<typename T = void>
using Result
using GenericCode
using StringErrorCode
template<typename SizeType, usize rank>
using Dextents
template<typename T>
using Arc
template<typename T>
using Arc
template<typename T>
using Rc
template<typename T>
using Rc

Enumerations

enum class  StorageCategory
enum class  Endian
enum class  BasicError
enum class  MemoryOrder

Functions

constexpr auto operator""_h (unsigned long long value)
constexpr auto operator""_min (unsigned long long value)
constexpr auto operator""_s (unsigned long long value)
constexpr auto operator""_ms (unsigned long long value)
constexpr auto operator""_us (unsigned long long value)
constexpr auto operator""_ns (unsigned long long value)
constexpr auto operator""_ps (unsigned long long value)
template<container::FixedString literal>
constexpr auto operator""_u8p ()
constexpr auto operator""_u8p (c8 const *data, size_t size)
constexpr auto operator""_p (char const *data, size_t size)
template<container::FixedString literal>
consteval auto operator""_u8pv ()
consteval auto operator""_u8pv (c8 const *data, size_t size)
consteval auto operator""_pv (char const *data, size_t size)
template<container::FixedString literal>
constexpr auto operator""_s ()
constexpr auto operator""_s (c8 const *data, size_t size)
constexpr auto operator""_ts (char const *data, size_t size)
template<container::FixedString literal>
consteval auto operator""_sv ()
consteval auto operator""_sv (c8 const *data, size_t size)
consteval auto operator""_tsv (char const *data, size_t size)
template<char... chars>
constexpr auto operator""_zic ()
consteval auto operator""_b (unsigned long long value) -> Byte
consteval auto operator""_b (char value) -> Byte
constexpr auto operator""_base64 (char const *data, usize size) -> serialization::Base64<>
template<container::FixedString string>
requires (detail::valid_json_literal<string>())
constexpr auto operator""_json ()
constexpr auto operator""_percent_encoded (char const *data, usize size) -> serialization::PercentEncoded<>
consteval auto operator""_uuid (char const *data, usize size) -> util::UUID
template<concepts::Object T>
constexpr auto cli_parser (TransparentStringView app_name, StringView description)
template<typename Out, concepts::InputContainer Con, typename... Args>
requires (!concepts::View<Out> && concepts::Expected<meta::ContainerValue<Con>>)
constexpr auto sequence_to (Con &&container, Args &&... args)
template<typename Out, concepts::InputContainer Con, typename... Args>
requires (!concepts::View<Out>)
constexpr auto to (Con &&container, Args &&... args)
template<typename F, typename... Args>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F> && (concepts::ConstructibleFrom<meta::Decay<Args>, Args> && ...))
constexpr auto bind_back (F &&f, Args &&... args)
template<typename F, typename... Args>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F> && (concepts::ConstructibleFrom<meta::Decay<Args>, Args> && ...))
constexpr auto bind_front (F &&f, Args &&... args)
template<typename F>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F>)
constexpr auto chain (F &&f)
template<typename F>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F>)
constexpr auto compose (F &&f)
template<concepts::DecayConstructible F>
constexpr auto flip (F &&function)
template<concepts::DecayConstructible F>
constexpr auto not_fn (F &&function)
template<typename F>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F>)
constexpr auto piped (F &&function)
auto get_current_thread_id () -> ThreadId
void cpu_relax ()
template<typename T>
constexpr auto as_const_pointer (T const *pointer)
template<concepts::CopyConstructible T>
auto black_box (T const &value) -> T
template<auto... values>
void compile_time_fail ()
constexpr void compiler_barrier ()
 Force to optimizer to reload memory addresses.
template<typename T, typename... Args>
requires (concepts::LanguageVoid<T> || concepts::CreatableFrom<T, Args...>)
constexpr auto create (Args &&... args)
template<typename T>
auto declval () -> meta::AddRValueReference< T >
template<typename T, typename U = T>
constexpr auto exchange (T &object, U &&new_value) -> T
template<typename Derived, typename Base>
requires (concepts::DerivedFrom<meta::RemoveCVRef<Derived>, Base>)
constexpr auto forward_as_base (meta::RemoveReference< Derived > &derived) -> meta::Like< meta::RemoveReference< Derived > &, Base > &&
template<typename T, typename U>
constexpr auto forward_like (U &&value) -> decltype(auto)
template<types::size_t index, typename T>
constexpr auto get (T &&value) -> decltype(auto)
constexpr auto is_constant_evaluated () noexcept -> bool
void unreachable ()
template<typename T, types::size_t size>
requires (concepts::CopyConstructible<T> && !concepts::LanguageArray<T>)
constexpr auto to_array (T(&array)[size])
template<typename T>
constexpr auto make_optional (T &&value)
template<size_t count, typename T>
constexpr auto fixed_span (T *value) -> Span< T, count >
template<size_t count, typename T>
constexpr auto fixed_span (T *value) -> Span< T, count >
template<typename F, concepts::TupleLike Tup>
constexpr auto apply (F &&f, Tup &&tuple) -> decltype(detail::apply_impl(meta::MakeIndexSequence< meta::TupleSize< Tup > > {}, util::forward< F >(f), util::forward< Tup >(tuple)))
template<typename F, concepts::TupleLike Tup>
constexpr auto apply_reverse (F &&f, Tup &&tuple) -> decltype(detail::apply_impl(meta::MakeReverseIndexSequence< meta::TupleSize< Tup > > {}, util::forward< F >(f), util::forward< Tup >(tuple)))
template<typename... Args>
constexpr auto forward_as_tuple (Args &&... args) -> Tuple< Args &&... >
template<typename... Args>
constexpr auto make_decayed_tuple (Args &&... args)
template<typename... Args>
constexpr auto make_tuple (Args &&... args)
template<typename F, concepts::TupleLike Tup>
constexpr auto apply (F &&f, Tup &&tuple) -> decltype(detail::apply_impl(meta::MakeIndexSequence< meta::TupleSize< Tup > > {}, util::forward< F >(f), util::forward< Tup >(tuple)))
template<typename... Args>
constexpr auto forward_as_tuple (Args &&... args) -> Tuple< Args &&... >
template<typename... Args>
constexpr auto make_decayed_tuple (Args &&... args)
template<typename... Args>
constexpr auto make_tuple (Args &&... args)
template<concepts::TupleLike... Tups>
constexpr auto tuple_cat (Tups &&... tuples)
template<typename F, concepts::TupleLike Tup>
requires (detail::TupleForEachValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
constexpr void tuple_for_each (F &&function, Tup &&tuple)
template<typename F, concepts::TupleLike Tup>
requires (detail::TupleTransformValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
constexpr auto tuple_transform (F &&function, Tup &&tuple)
template<concepts::TupleLike... Tups>
constexpr auto tuple_cat (Tups &&... tuples)
template<typename F, concepts::TupleLike Tup>
requires (detail::TupleForEachValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
constexpr void tuple_for_each (F &&function, Tup &&tuple)
template<typename F, concepts::TupleLike Tup>
requires (detail::TupleForEachValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
constexpr void tuple_for_each_reverse (F &&function, Tup &&tuple)
template<typename F, concepts::TupleLike Tup>
requires (detail::TupleTransformValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
constexpr auto tuple_transform (F &&function, Tup &&tuple)
template<size_t index, concepts::VariantLike Var, typename Res = meta::VariantValue<Var, index>>
constexpr auto get_if (Var &&variant) -> Optional< meta::RemoveRValueReference< Res > >
template<typename R, typename Vis, concepts::VariantLike... Vars, typename Indices = meta::CartesianProduct<meta::AsList<meta::MakeIndexSequence<meta::VariantSize<Vars>>>...>>
requires (requires { []<concepts::TypeList... Idx>(meta::List<Idx...>) { return Array { (&detail::VisitHelper<Idx, R, Vis, Vars...>::call)... }; }(Indices {}); })
constexpr auto visit (Vis &&visitor, Vars &&... variants) -> R

Variables

constexpr auto signbit = math::detail::Signbit {}
constexpr auto copysign = math::detail::Copysign {}
constexpr auto round = math::detail::Round {}
constexpr auto remainder = math::detail::Remainder {}
constexpr auto fmod = math::detail::Fmod {}
constexpr auto cos = math::detail::Cos {}
constexpr auto sin = math::detail::Sin {}
constexpr auto approximately_equal = math::detail::ApproximatelyEqual {}
constexpr auto unsafe_forget = util::detail::UnsafeForget {}
 Steal ownership of an object and do not its destructor.
constexpr auto as_writable_byte_span = vocab::byte_buffer::AsWritableByteSpan {}
constexpr auto as_byte_span = vocab::byte_buffer::AsByteSpan {}
constexpr auto format_error = vocab::detail::FormatError {}
constexpr auto big_endian_to_host
constexpr auto host_to_big_endian
constexpr auto host_to_little_endian
constexpr auto little_endian_to_host
constexpr auto bit_ceil
constexpr auto bit_floor
constexpr auto bit_width
constexpr auto byteswap
constexpr auto countl_one
constexpr auto countl_zero
constexpr auto countr_one
constexpr auto countr_zero
constexpr auto has_single_bit
constexpr auto popcount
constexpr auto rotl
constexpr auto rotr
template<concepts::InstanceOf< Duration > To>
constexpr auto duration_cast
template<concepts::InstanceOf< Duration > To>
constexpr auto time_point_cast
template<typename T>
constexpr auto get_cli_parser
constexpr auto sequence
constexpr auto adjacent_find
constexpr auto all_of
constexpr auto any_of
constexpr auto binary_search
constexpr auto contains
constexpr auto contains_subrange
constexpr auto copy
constexpr auto copy_backward
constexpr auto copy_if
constexpr auto copy_n
constexpr auto count
constexpr auto count_if
constexpr auto destroy
constexpr auto destroy_n
constexpr auto ends_with
constexpr auto equal_range
constexpr auto fill
constexpr auto fill_n
constexpr auto find
constexpr auto find_end
constexpr auto find_first_not_of
constexpr auto find_first_of
constexpr auto find_if
constexpr auto find_if_not
constexpr auto find_last
constexpr auto find_last_if
constexpr auto find_last_if_not
constexpr auto find_last_not_of
constexpr auto find_last_of
constexpr auto fold_left
constexpr auto fold_left_first
constexpr auto fold_left_first_with_iter
constexpr auto fold_left_with_iter
constexpr auto fold_right
constexpr auto fold_right_last
constexpr auto for_each
constexpr auto for_each_n
constexpr auto is_heap
constexpr auto is_heap_until
constexpr auto is_partitioned
constexpr auto is_permutation
constexpr auto is_sorted
constexpr auto is_sorted_until
constexpr auto lower_bound
constexpr auto make_heap
constexpr auto max
constexpr auto max_element
constexpr auto merge
constexpr auto min
constexpr auto min_element
constexpr auto minmax
constexpr auto minmax_element
constexpr auto mismatch
constexpr auto next_permutation
constexpr auto none_of
constexpr auto partition
constexpr auto partition_copy
constexpr auto partition_point
constexpr auto pop_heap
constexpr auto prev_permutation
constexpr auto product
constexpr auto push_heap
constexpr auto remove_copy
constexpr auto remove_copy_if
constexpr auto replace
constexpr auto replace_copy
constexpr auto replace_copy_if
constexpr auto replace_if
constexpr auto reverse_copy
constexpr auto rotate
constexpr auto rotate_copy
constexpr auto search
constexpr auto search_n
constexpr auto set_difference
constexpr auto set_intersection
constexpr auto set_symmetric_difference
constexpr auto set_union
constexpr auto shift_left
constexpr auto shift_right
constexpr auto shuffle
constexpr auto sort
constexpr auto sort_heap
constexpr auto stable_partition
constexpr auto starts_with
constexpr auto sum
constexpr auto swap_ranges
constexpr auto uninitialized_copy
constexpr auto uninitialized_copy_n
constexpr auto uninitialized_default_construct
constexpr auto uninitialized_default_construct_n
constexpr auto uninitialized_fill
constexpr auto uninitialized_fill_n
constexpr auto uninitialized_move
constexpr auto uninitialized_move_n
constexpr auto uninitialized_relocate
constexpr auto uninitialized_relocate_backwards
constexpr auto uninitialized_value_construct
constexpr auto uninitialized_value_construct_n
constexpr auto unique
constexpr auto unique_copy
constexpr auto upper_bound
constexpr auto allocate
template<typename T>
constexpr auto allocate_many
template<typename T>
constexpr auto allocate_one
constexpr auto deallocate
template<typename T>
constexpr auto deallocate_many
template<typename T>
constexpr auto deallocate_one
constexpr auto fail_allocator
constexpr auto hash
constexpr auto hash_write
constexpr auto at
constexpr auto at_unchecked
constexpr auto back
constexpr auto back_unchecked
constexpr auto front
constexpr auto front_unchecked
constexpr auto begin
constexpr auto cbegin
constexpr auto cdata
constexpr auto cend
constexpr auto crbegin
constexpr auto crend
constexpr auto data
constexpr auto empty
constexpr auto end
constexpr auto erase
constexpr auto erase_if
constexpr auto rbegin
constexpr auto reconstruct
constexpr auto rend
constexpr auto size
constexpr auto ssize
constexpr auto advance
constexpr auto default_sentinel
constexpr auto distance
constexpr auto next
constexpr auto prev
constexpr auto to_transparent_string
constexpr auto to_utf8_string
constexpr auto to_utf8_string_lossy
constexpr auto from_container
constexpr auto cache_last
constexpr auto stopped
constexpr auto sync_wait
constexpr auto sync_wait_on
constexpr auto sync_wait_with_variant
constexpr auto sync_wait_with_variant_on
constexpr as_awaitable_ns::Function as_awaitable
template<concepts::InstanceOf< Protocol > Proto>
constexpr auto ipc_binary_connect_to_client
template<concepts::InstanceOf< Protocol > Proto>
constexpr auto ipc_binary_connect_to_server
constexpr auto send
constexpr auto empty_env
constexpr auto format
template<concepts::Encoding Enc>
constexpr auto format_encoded_context
constexpr auto formatter_in_place
constexpr auto to_string
constexpr auto as_bool
constexpr auto between_exclusive
constexpr auto between_inclusive
constexpr auto bit_and
constexpr auto compare
constexpr auto compare_backwards
template<concepts::LanguageFunction T, concepts::Allocator Alloc = platform::DefaultAllocator>
constexpr auto make_function
constexpr auto curry
constexpr auto curry_back
constexpr auto dereference
constexpr auto equal
constexpr auto equal_or_greater
constexpr auto equal_or_less
constexpr auto greater
constexpr auto identity
constexpr auto into_void
constexpr auto invoke
template<typename R>
constexpr auto invoke_r
constexpr auto less
template<typename T>
constexpr auto make_deferred
 Creates a deferred function object.
constexpr auto minus
constexpr auto multiplies
constexpr auto not_equal
constexpr auto overload
constexpr auto plus
constexpr auto proj
constexpr tag_invoke_detail::TagInvokeFn tag_invoke
constexpr auto uncurry
constexpr auto ycombinator
constexpr auto read_some
constexpr auto write_some
constexpr auto read_all
constexpr auto read_exactly
constexpr auto read_to_string
constexpr auto write_exactly
template<concepts::Encoding Enc>
constexpr auto writer_print
template<concepts::Encoding Enc>
constexpr auto writer_println
constexpr auto abs
constexpr auto abs_diff
constexpr auto abs_unsigned
constexpr auto align_down
constexpr auto align_up
constexpr auto divide_round_up
constexpr auto gcd
template<concepts::Integer T>
constexpr auto representable_as
template<concepts::Integer T>
constexpr auto representable_as
constexpr auto lcm
constexpr auto midpoint
constexpr auto to_signed
constexpr auto to_unsigned
template<auto val>
constexpr auto c_
 A value of type Constexpr<val>.
template<typename T>
constexpr auto create_parser
constexpr auto create_parser_in_place
template<typename T>
constexpr auto parse
template<typename T>
constexpr auto parse_partial
template<typename T>
constexpr auto parse_unchecked
template<typename T>
constexpr auto parse
template<typename T>
constexpr auto parse_partial
template<typename T>
constexpr auto parse_unchecked
constexpr auto run_parser
constexpr auto run_parser_partial
constexpr auto run_parser_unchecked
constexpr auto run_parser
constexpr auto run_parser_partial
constexpr auto run_parser_unchecked
template<typename T>
constexpr auto atom
constexpr auto enum_to_string
template<container::FixedString enumerator_name, auto enumerator_value, container::FixedString description = "">
constexpr auto enumerator
template<container::FixedString enum_name, container::FixedString description = "">
constexpr auto make_enumerators
template<container::FixedString field_name, auto field_pointer, container::FixedString description = "">
constexpr auto field
template<container::FixedString class_name, container::FixedString description = "">
constexpr auto make_fields
constexpr auto reflect
template<concepts::Reflectable T, typename M = Reflect<T>>
constexpr auto type_name
constexpr auto valid_enum_value
template<typename T>
constexpr auto deserialize_binary
constexpr auto binary_format
constexpr auto serialize_binary
template<typename T>
constexpr auto deserialize
constexpr auto deserialize_in_place
constexpr auto deserializer
template<typename T>
constexpr auto deserialize_string
template<typename T = json::Value>
constexpr auto deserialize_json
template<concepts::Deserializable< JsonDeserializer< StringReader< container::StringView > > > T = json::Value>
constexpr auto from_json_string
constexpr auto json_format
constexpr auto serialize_json
constexpr auto to_json_string
constexpr auto serialize
constexpr auto serialize_size
constexpr auto serializer
constexpr auto serialize_string
constexpr auto adopt_lock
constexpr auto defer_lock
constexpr auto try_to_lock
constexpr auto in_place
template<template< typename... > typename Template>
constexpr auto in_place_template
template<typename T>
constexpr auto in_place_type
constexpr auto piecewise_construct
constexpr auto clamp
constexpr auto clone
template<typename T>
constexpr auto construct
constexpr auto construct_at
constexpr auto create_in_place
constexpr auto default_construct_at
constexpr auto destroy_at
constexpr auto get_in_place
constexpr auto maybe_clone
template<typename Arg>
constexpr auto get_named_argument
 A helper function to access a named argument.
template<typename Arg>
constexpr auto get_named_argument_or
 A helper function to access a named argument or a fallback value.
constexpr auto cref
constexpr auto ref
constexpr auto relocate
constexpr struct di::util::SwapFunction swap
constexpr auto to_address
constexpr auto to_owned
constexpr auto to_uintptr
constexpr auto to_underlying
constexpr auto unwrap_reference
constexpr auto generate_uuid
constexpr auto voidify
constexpr auto into_status_code
constexpr auto as_fallible
constexpr auto if_error
constexpr auto if_success
constexpr auto invoke_as_fallible
constexpr auto try_infallible
constexpr auto unexpect
constexpr auto lift_bool
constexpr auto nullopt
template<detail::IntrusivePtrValid< ArcTag > T>
constexpr auto make_arc
template<typename T>
constexpr auto make_box
constexpr auto adopt_object
constexpr auto retain_object
constexpr auto adopt_object
template<detail::IntrusivePtrValid< ArcTag > T>
constexpr auto make_arc
template<typename T>
constexpr auto make_box
template<detail::IntrusivePtrValid< RcTag > T>
constexpr auto make_rc
constexpr auto retain_object
template<detail::IntrusivePtrValid< RcTag > T>
constexpr auto make_rc
constexpr auto as_bytes
constexpr auto as_writable_bytes
constexpr auto as_bytes
constexpr auto as_writable_bytes
constexpr auto dynamic_extent
constexpr auto dynamic_extent
template<typename T>
constexpr auto make_from_tuple
template<typename T>
constexpr auto make_from_tuple
constexpr auto tie
template<typename R>
constexpr auto tuple_sequence
constexpr auto tie
template<typename R>
constexpr auto tuple_sequence
template<typename T>
constexpr auto holds_alternative

Typedef Documentation

◆ AllocatorResult

template<concepts::Allocator Alloc, typename T = void>
using di::meta::AllocatorResult

◆ Any

template<concepts::Interface UserInterface, concepts::AnyStorage Storage = HybridStorage<>, typename VTablePolicy = MaybeInlineVTable<3>>
using di::any::Any

◆ AnyHybrid

template<concepts::Interface Interface, StorageCategory storage_category = StorageCategory::MoveOnly, size_t inline_size = 2 * sizeof(void*), size_t inline_align = alignof(void*), concepts::Allocator Alloc = platform::DefaultAllocator>
using di::any::AnyHybrid

◆ AnyInline

template<concepts::Interface Interface, size_t inline_size = 2 * sizeof(void*), size_t inline_align = alignof(void*)>
using di::any::AnyInline

◆ AnyOperationState

template<typename Env = void, concepts::AnyStorage Storage = any::HybridStorage<any::StorageCategory::MoveOnly, 8 * sizeof(void*), alignof(void*)>, typename VTablePolicy = any::MaybeInlineVTable<3>>
using di::execution::AnyOperationState

◆ AnyReceiver

template<concepts::ValidCompletionSignatures Sigs, typename Env = void, concepts::AnyStorage Storage = any::InlineStorage<2 * sizeof(void*), alignof(void*)>, typename VTablePolicy = any::MaybeInlineVTable<3>>
using di::execution::AnyReceiver

◆ AnyRef

template<concepts::Interface Interface>
using di::any::AnyRef

◆ AnySender

template<concepts::ValidCompletionSignatures Sigs, typename Env = void, concepts::AnyStorage Storage = any::HybridStorage<>, typename VTablePolicy = any::MaybeInlineVTable<3>, concepts::OperationState Op = AnyOperationState<>, typename Rec = AnyReceiver<detail::AnySigs<Sigs>>>
using di::execution::AnySender

◆ AnySenderOf

template<typename T = void>
using di::execution::AnySenderOf

◆ AnyShared

template<concepts::Interface Interface, concepts::Allocator Alloc = platform::DefaultAllocator>
using di::any::AnyShared

◆ AnyUnique

template<concepts::Interface Interface, concepts::Allocator Alloc = platform::DefaultAllocator>
using di::any::AnyUnique

◆ Arc [1/2]

template<typename T>
using di::vocab::Arc

◆ Arc [2/2]

template<typename T>
using di::vocab::Arc

◆ AsyncGenerator

template<typename Ref, typename Value = void>
using di::execution::AsyncGenerator

◆ Base64View

◆ Byte

◆ byte

◆ ByteBuffer

◆ c16

◆ c32

◆ c8

◆ CallResult

template<typename F, typename... Args>
using di::meta::CallResult

◆ CoroutineHandle

template<typename Promise = void>
using di::CoroutineHandle = std::coroutine_handle<Promise>

◆ CountingScope

template<concepts::Allocator Alloc = platform::DefaultAllocator>
using di::execution::CountingScope

A scope that waits for all spawned senders to complete.

Template Parameters
AllocThe allocator to use for the scope.

CountingScope is a scope that waits for all spawned senders to complete, using the async resource mechanism. This means that it can only be accessed using the execution::use_resources function. The provided token allows spawning work, and the async "destructor" will wait for all spawned work to complete.

This limited API allows the scope to be implemented efficently, with only an atomic counter. This is possible only because the resource API guarantees that we will wait for all spawned work exactly once. More advanced use cases may need to wait multiple times, or store the scope in non-async storage, and would need to use a different scope implementation.

See also
use_resources
nest
spawn
spawn_future
request_stop

◆ Days

◆ DefaultAllocator

◆ DefaultFallibleAllocator

◆ DefaultLock

◆ DeserializeMetadata

template<concepts::DeserializationFormat S, typename T>
using di::meta::DeserializeMetadata

◆ DeserializeResult

template<typename S, typename T>
using di::meta::DeserializeResult

◆ Dextents

template<typename SizeType, usize rank>
using di::vocab::Dextents

◆ Dispatcher

template<typename Self, concepts::LanguageFunction Sig, typename... Tags>
using di::any::Dispatcher

◆ Error

The error module is nearly an implementation of P1028R4. https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p1028r4.pdf

◆ ExclusiveByteBuffer

◆ f32

◆ f64

◆ FormatBackgroundColor

◆ FormatColor

◆ FormatEffect

◆ FormatStringImpl

template<concepts::Encoding Enc, concepts::Formattable... Args>
using di::fmt::FormatStringImpl

◆ GenericCode

◆ Hours

◆ i128_fallback

◆ i16

◆ i256

◆ i32

◆ i64

◆ i8

◆ imax

◆ intptr_t

◆ IntrusiveHashSetNode

template<typename Tag>
using di::container::IntrusiveHashSetNode

◆ IntrusiveTreeSetNode

template<typename Tag = DefaultIntrusiveTreeSetTag>
using di::container::IntrusiveTreeSetNode

◆ InvokeResult

template<typename... Ts>
using di::meta::InvokeResult

◆ iptr

◆ isize

◆ Microseconds

◆ Milliseconds

◆ MinstdRand

◆ MinstdRand0

◆ Minutes

◆ Months

◆ Nanoseconds

◆ NoopCoroutineHandle

using di::NoopCoroutineHandle = std::noop_coroutine_handle

◆ NoopCoroutinePromise

using di::NoopCoroutinePromise = std::noop_coroutine_promise

◆ nullptr_t

◆ Path

◆ PathView

◆ PercentEncodedView

◆ Picoseconds

◆ ptrdiff_t

◆ RatioAdd

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioAdd

◆ RatioDivide

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioDivide

◆ RatioEqual

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioEqual

◆ RatioGreater

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioGreater

◆ RatioGreaterEqual

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioGreaterEqual

◆ RatioLess

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioLess

◆ RatioLessEqual

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioLessEqual

◆ RatioMultiply

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioMultiply

◆ RatioNotEqual

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioNotEqual

◆ RatioSubtract

template<detail::IsRatio A, detail::IsRatio B>
using di::math::RatioSubtract

◆ Rc [1/2]

template<typename T>
using di::vocab::Rc

◆ Rc [2/2]

template<typename T>
using di::vocab::Rc

◆ Reader

◆ ReceiverAdaptor

template<concepts::ClassType Self, concepts::Receiver Base = receiver_interface_ns::fake_receiver::FakeReceiver>
using di::execution::ReceiverAdaptor

◆ Reflect

template<concepts::Reflectable T>
using di::meta::Reflect

◆ Result

template<typename T = void>
using di::vocab::Result

◆ Seconds

◆ SerializeMetadata

template<concepts::SerializationFormat S, typename T>
using di::meta::SerializeMetadata

◆ SerializeResult

template<typename S>
using di::meta::SerializeResult

◆ size_t

◆ ssize_t

◆ StaticEndian

template<concepts::IntegralOrEnum T, Endian endian>
using di::bit::StaticEndian

◆ Stopped

◆ String

◆ StringErrorCode

◆ StringView

◆ SuspendAlways

using di::SuspendAlways = std::suspend_always

◆ SuspendNever

using di::SuspendNever = std::suspend_never

◆ Tag

template<auto & T>
using di::types::Tag

◆ TagInvokeResult

template<typename Tag, typename... Args>
using di::meta::TagInvokeResult

◆ ThreadId

◆ TransparentString

◆ TransparentStringView

◆ u128_fallback

◆ u16

◆ u256

◆ u32

◆ u64

◆ u8

◆ uintptr_t

◆ umax

◆ uptr

◆ usize

◆ Utf8Path

◆ Utf8PathView

◆ Writer

◆ Years

◆ ZC16CString

◆ ZC16String

◆ ZC32CString

◆ ZC32String

◆ ZC8CString

◆ ZC8String

◆ ZCString

◆ ZCUString

◆ ZCWString

◆ ZString

◆ ZUString

◆ ZWString

Enumeration Type Documentation

◆ BasicError

enum class di::platform::generic_error::BasicError : long
strong

◆ Endian

enum class di::bit::Endian
strong

◆ MemoryOrder

enum class di::sync::MemoryOrder : int
strong

◆ StorageCategory

enum class di::any::StorageCategory
strong

Function Documentation

◆ apply() [1/2]

template<typename F, concepts::TupleLike Tup>
auto di::vocab::apply ( F && f,
Tup && tuple )->decltype(detail::apply_impl(meta::MakeIndexSequence< meta::TupleSize< Tup > >{}, util::forward< F >(f), util::forward< Tup >(tuple)))
constexpr

◆ apply() [2/2]

template<typename F, concepts::TupleLike Tup>
auto di::vocab::apply ( F && f,
Tup && tuple )->decltype(detail::apply_impl(meta::MakeIndexSequence< meta::TupleSize< Tup > >{}, util::forward< F >(f), util::forward< Tup >(tuple)))
constexpr

◆ apply_reverse()

template<typename F, concepts::TupleLike Tup>
auto di::vocab::apply_reverse ( F && f,
Tup && tuple )->decltype(detail::apply_impl(meta::MakeReverseIndexSequence< meta::TupleSize< Tup > >{}, util::forward< F >(f), util::forward< Tup >(tuple)))
constexpr

◆ as_const_pointer()

template<typename T>
auto di::util::as_const_pointer ( T const * pointer)
constexpr

◆ bind_back()

template<typename F, typename... Args>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F> && (concepts::ConstructibleFrom<meta::Decay<Args>, Args> && ...))
auto di::function::bind_back ( F && f,
Args &&... args )
constexpr

◆ bind_front()

template<typename F, typename... Args>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F> && (concepts::ConstructibleFrom<meta::Decay<Args>, Args> && ...))
auto di::function::bind_front ( F && f,
Args &&... args )
constexpr

◆ black_box()

template<concepts::CopyConstructible T>
auto di::util::black_box ( T const & value) ->T

◆ chain()

template<typename F>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F>)
auto di::function::chain ( F && f)
constexpr

◆ cli_parser()

template<concepts::Object T>
auto di::cli::cli_parser ( TransparentStringView app_name,
StringView description )
constexpr

◆ compile_time_fail()

template<auto... values>
void di::util::compile_time_fail ( )

◆ compiler_barrier()

void di::util::compiler_barrier ( )
constexpr

Force to optimizer to reload memory addresses.

In certain cases, the compiler is able to cache the result of a read from a memory address. Inserting a compiler barrier will prevent this, and force the compiler to reload the value.

Warning
In most cases, it will be more clear to use a di::Atomic<> variable with relaxed memory ordering when this behavior is desired.

◆ compose()

template<typename F>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F>)
auto di::function::compose ( F && f)
constexpr

◆ cpu_relax()

void di::sync::cpu_relax ( )
inline

◆ create()

template<typename T, typename... Args>
requires (concepts::LanguageVoid<T> || concepts::CreatableFrom<T, Args...>)
auto di::util::create ( Args &&... args)
constexpr

◆ declval()

template<typename T>
auto di::util::declval ( ) ->meta::AddRValueReference< T >

◆ exchange()

template<typename T, typename U = T>
auto di::util::exchange ( T & object,
U && new_value )->T
constexpr

◆ fixed_span() [1/2]

template<size_t count, typename T>
auto di::vocab::fixed_span ( T * value) ->Span< T, count >
constexpr

◆ fixed_span() [2/2]

template<size_t count, typename T>
auto di::vocab::fixed_span ( T * value) ->Span< T, count >
constexpr

◆ flip()

template<concepts::DecayConstructible F>
auto di::function::flip ( F && function)
constexpr

◆ forward_as_base()

template<typename Derived, typename Base>
requires (concepts::DerivedFrom<meta::RemoveCVRef<Derived>, Base>)
auto di::util::forward_as_base ( meta::RemoveReference< Derived > & derived) ->meta::Like< meta::RemoveReference< Derived > &, Base > &&
constexpr

◆ forward_as_tuple() [1/2]

template<typename... Args>
auto di::vocab::forward_as_tuple ( Args &&... args) ->Tuple< Args &&... >
constexpr

◆ forward_as_tuple() [2/2]

template<typename... Args>
auto di::vocab::forward_as_tuple ( Args &&... args) ->Tuple< Args &&... >
constexpr

◆ forward_like()

template<typename T, typename U>
auto di::util::forward_like ( U && value) ->decltype(auto)
nodiscardconstexpr

◆ get()

template<types::size_t index, typename T>
auto di::util::get ( T && value) ->decltype(auto)
constexpr

◆ get_current_thread_id()

◆ get_if()

template<size_t index, concepts::VariantLike Var, typename Res = meta::VariantValue<Var, index>>
auto di::vocab::get_if ( Var && variant) ->Optional< meta::RemoveRValueReference< Res > >
constexpr

◆ is_constant_evaluated()

auto di::util::is_constant_evaluated ( ) ->bool
constexprnoexcept

◆ make_decayed_tuple() [1/2]

template<typename... Args>
auto di::vocab::make_decayed_tuple ( Args &&... args)
constexpr

◆ make_decayed_tuple() [2/2]

template<typename... Args>
auto di::vocab::make_decayed_tuple ( Args &&... args)
constexpr

◆ make_optional()

template<typename T>
auto di::vocab::make_optional ( T && value)
constexpr

◆ make_tuple() [1/2]

template<typename... Args>
auto di::vocab::make_tuple ( Args &&... args)
constexpr

◆ make_tuple() [2/2]

template<typename... Args>
auto di::vocab::make_tuple ( Args &&... args)
constexpr

◆ not_fn()

template<concepts::DecayConstructible F>
auto di::function::not_fn ( F && function)
constexpr

◆ piped()

template<typename F>
requires (concepts::ConstructibleFrom<meta::Decay<F>, F>)
auto di::function::piped ( F && function)
constexpr

◆ sequence_to()

template<typename Out, concepts::InputContainer Con, typename... Args>
requires (!concepts::View<Out> && concepts::Expected<meta::ContainerValue<Con>>)
auto di::container::sequence_to ( Con && container,
Args &&... args )
constexpr

◆ to()

template<typename Out, concepts::InputContainer Con, typename... Args>
requires (!concepts::View<Out>)
auto di::container::to ( Con && container,
Args &&... args )
constexpr

◆ to_array()

template<typename T, types::size_t size>
requires (concepts::CopyConstructible<T> && !concepts::LanguageArray<T>)
auto di::vocab::to_array ( T(&) array[size])
constexpr

◆ tuple_cat() [1/2]

template<concepts::TupleLike... Tups>
auto di::vocab::tuple_cat ( Tups &&... tuples)
constexpr

◆ tuple_cat() [2/2]

template<concepts::TupleLike... Tups>
auto di::vocab::tuple_cat ( Tups &&... tuples)
constexpr

◆ tuple_for_each() [1/2]

template<typename F, concepts::TupleLike Tup>
requires (detail::TupleForEachValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
void di::vocab::tuple_for_each ( F && function,
Tup && tuple )
constexpr

◆ tuple_for_each() [2/2]

template<typename F, concepts::TupleLike Tup>
requires (detail::TupleForEachValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
void di::vocab::tuple_for_each ( F && function,
Tup && tuple )
constexpr

◆ tuple_for_each_reverse()

template<typename F, concepts::TupleLike Tup>
requires (detail::TupleForEachValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
void di::vocab::tuple_for_each_reverse ( F && function,
Tup && tuple )
constexpr

◆ tuple_transform() [1/2]

template<typename F, concepts::TupleLike Tup>
requires (detail::TupleTransformValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
auto di::vocab::tuple_transform ( F && function,
Tup && tuple )
constexpr

◆ tuple_transform() [2/2]

template<typename F, concepts::TupleLike Tup>
requires (detail::TupleTransformValid<F, Tup, meta::MakeIndexSequence<meta::TupleSize<Tup>>>::value)
auto di::vocab::tuple_transform ( F && function,
Tup && tuple )
constexpr

◆ unreachable()

void di::util::unreachable ( )
inline

◆ visit()

template<typename R, typename Vis, concepts::VariantLike... Vars, typename Indices = meta::CartesianProduct<meta::AsList<meta::MakeIndexSequence<meta::VariantSize<Vars>>>...>>
requires (requires { []<concepts::TypeList... Idx>(meta::List<Idx...>) { return Array { (&detail::VisitHelper<Idx, R, Vis, Vars...>::call)... }; }(Indices {}); })
auto di::vocab::visit ( Vis && visitor,
Vars &&... variants )->R
constexpr

Variable Documentation

◆ abs

auto di::math::abs
inlineconstexpr

◆ abs_diff

auto di::math::abs_diff
inlineconstexpr

◆ abs_unsigned

auto di::math::abs_unsigned
inlineconstexpr

◆ adjacent_find

auto di::container::adjacent_find
inlineconstexpr

◆ adopt_lock

auto di::sync::adopt_lock
inlineconstexpr

◆ adopt_object [1/2]

auto di::vocab::adopt_object
inlineconstexpr

◆ adopt_object [2/2]

auto di::vocab::adopt_object
inlineconstexpr

◆ advance

auto di::container::advance
inlineconstexpr

◆ align_down

auto di::math::align_down
inlineconstexpr

◆ align_up

auto di::math::align_up
inlineconstexpr

◆ all_of

auto di::container::all_of
inlineconstexpr

◆ allocate

auto di::container::allocate
inlineconstexpr

◆ allocate_many

template<typename T>
auto di::container::allocate_many
inlineconstexpr

◆ allocate_one

template<typename T>
auto di::container::allocate_one
inlineconstexpr

◆ any_of

auto di::container::any_of
inlineconstexpr

◆ approximately_equal

auto di::approximately_equal = math::detail::ApproximatelyEqual {}
inlineconstexpr

◆ as_awaitable

as_awaitable_ns::Function const di::execution::as_awaitable
inlineconstexpr

◆ as_bool

auto di::function::as_bool
inlineconstexpr

◆ as_byte_span

auto di::as_byte_span = vocab::byte_buffer::AsByteSpan {}
inlineconstexpr

◆ as_bytes [1/2]

auto di::vocab::as_bytes
inlineconstexpr

◆ as_bytes [2/2]

auto di::vocab::as_bytes
inlineconstexpr

◆ as_fallible

auto di::vocab::as_fallible
inlineconstexpr

◆ as_writable_byte_span

auto di::as_writable_byte_span = vocab::byte_buffer::AsWritableByteSpan {}
inlineconstexpr

◆ as_writable_bytes [1/2]

auto di::vocab::as_writable_bytes
inlineconstexpr

◆ as_writable_bytes [2/2]

auto di::vocab::as_writable_bytes
inlineconstexpr

◆ at

auto di::container::at
inlineconstexpr

◆ at_unchecked

auto di::container::at_unchecked
inlineconstexpr

◆ atom

template<typename T>
auto di::reflection::atom
inlineconstexpr

◆ back

auto di::container::back
inlineconstexpr

◆ back_unchecked

auto di::container::back_unchecked
inlineconstexpr

◆ begin

auto di::container::begin
inlineconstexpr

◆ between_exclusive

auto di::function::between_exclusive
inlineconstexpr

◆ between_inclusive

auto di::function::between_inclusive
inlineconstexpr

◆ big_endian_to_host

auto di::bit::big_endian_to_host
inlineconstexpr

◆ binary_format

auto di::serialization::binary_format
inlineconstexpr

◆ binary_search

auto di::container::binary_search
inlineconstexpr

◆ bit_and

auto di::function::bit_and
inlineconstexpr

◆ bit_ceil

auto di::bit::bit_ceil
inlineconstexpr

◆ bit_floor

auto di::bit::bit_floor
inlineconstexpr

◆ bit_width

auto di::bit::bit_width
inlineconstexpr

◆ byteswap

auto di::bit::byteswap
inlineconstexpr

◆ c_

template<auto val>
auto di::meta::c_
inlineconstexpr

A value of type Constexpr<val>.

Template Parameters
valThe value of the Constexpr.
See also
Constexpr

◆ cache_last

auto di::container::view::cache_last
inlineconstexpr

◆ cbegin

auto di::container::cbegin
inlineconstexpr

◆ cdata

auto di::container::cdata
inlineconstexpr

◆ cend

auto di::container::cend
inlineconstexpr

◆ clamp

auto di::util::clamp
inlineconstexpr

◆ clone

auto di::util::clone
inlineconstexpr

◆ compare

auto di::function::compare
inlineconstexpr

◆ compare_backwards

auto di::function::compare_backwards
inlineconstexpr

◆ construct

template<typename T>
auto di::util::construct
inlineconstexpr

◆ construct_at

auto di::util::construct_at
inlineconstexpr

◆ contains

auto di::container::contains
inlineconstexpr

◆ contains_subrange

auto di::container::contains_subrange
inlineconstexpr

◆ copy

auto di::container::copy
inlineconstexpr

◆ copy_backward

auto di::container::copy_backward
inlineconstexpr

◆ copy_if

auto di::container::copy_if
inlineconstexpr

◆ copy_n

auto di::container::copy_n
inlineconstexpr

◆ copysign

auto di::copysign = math::detail::Copysign {}
inlineconstexpr

◆ cos

auto di::cos = math::detail::Cos {}
inlineconstexpr

◆ count

auto di::container::count
inlineconstexpr

◆ count_if

auto di::container::count_if
inlineconstexpr

◆ countl_one

auto di::bit::countl_one
inlineconstexpr

◆ countl_zero

auto di::bit::countl_zero
inlineconstexpr

◆ countr_one

auto di::bit::countr_one
inlineconstexpr

◆ countr_zero

auto di::bit::countr_zero
inlineconstexpr

◆ crbegin

auto di::container::crbegin
inlineconstexpr

◆ create_in_place

auto di::util::create_in_place
inlineconstexpr

◆ create_parser

template<typename T>
auto di::parser::create_parser
inlineconstexpr

◆ create_parser_in_place

auto di::parser::create_parser_in_place
inlineconstexpr

◆ cref

auto di::util::cref
inlineconstexpr

◆ crend

auto di::container::crend
inlineconstexpr

◆ curry

auto di::function::curry
inlineconstexpr

◆ curry_back

auto di::function::curry_back
inlineconstexpr

◆ data

auto di::container::data
inlineconstexpr

◆ deallocate

auto di::container::deallocate
inlineconstexpr

◆ deallocate_many

template<typename T>
auto di::container::deallocate_many
inlineconstexpr

◆ deallocate_one

template<typename T>
auto di::container::deallocate_one
inlineconstexpr

◆ default_construct_at

auto di::util::default_construct_at
inlineconstexpr

◆ default_sentinel

auto di::container::default_sentinel
inlineconstexpr

◆ defer_lock

auto di::sync::defer_lock
inlineconstexpr

◆ dereference

auto di::function::dereference
inlineconstexpr

◆ deserialize

template<typename T>
auto di::serialization::deserialize
inlineconstexpr

◆ deserialize_binary

template<typename T>
auto di::serialization::deserialize_binary
inlineconstexpr

◆ deserialize_in_place

◆ deserialize_json

template<typename T = json::Value>
auto di::serialization::deserialize_json
inlineconstexpr

◆ deserialize_string

template<typename T>
auto di::serialization::deserialize_string
inlineconstexpr

◆ deserializer

auto di::serialization::deserializer
inlineconstexpr

◆ destroy

auto di::container::destroy
inlineconstexpr

◆ destroy_at

auto di::util::destroy_at
inlineconstexpr

◆ destroy_n

auto di::container::destroy_n
inlineconstexpr

◆ distance

auto di::container::distance
inlineconstexpr

◆ divide_round_up

auto di::math::divide_round_up
inlineconstexpr

◆ duration_cast

template<concepts::InstanceOf< Duration > To>
auto di::chrono::duration_cast
inlineconstexpr

◆ dynamic_extent [1/2]

auto di::vocab::dynamic_extent
inlineconstexpr

◆ dynamic_extent [2/2]

auto di::vocab::dynamic_extent
inlineconstexpr

◆ empty

auto di::container::empty
inlineconstexpr

◆ empty_env

auto di::types::empty_env
inlineconstexpr

◆ end

auto di::container::end
inlineconstexpr

◆ ends_with

auto di::container::ends_with
inlineconstexpr

◆ enum_to_string

auto di::reflection::enum_to_string
inlineconstexpr

◆ enumerator

template<container::FixedString enumerator_name, auto enumerator_value, container::FixedString description = "">
auto di::reflection::enumerator
constexpr

◆ equal

auto di::function::equal
inlineconstexpr

◆ equal_or_greater

auto di::function::equal_or_greater
inlineconstexpr

◆ equal_or_less

auto di::function::equal_or_less
inlineconstexpr

◆ equal_range

auto di::container::equal_range
inlineconstexpr

◆ erase

auto di::container::erase
inlineconstexpr

◆ erase_if

auto di::container::erase_if
inlineconstexpr

◆ fail_allocator

auto di::container::fail_allocator
inlineconstexpr

◆ field

template<container::FixedString field_name, auto field_pointer, container::FixedString description = "">
auto di::reflection::field
constexpr

◆ fill

auto di::container::fill
inlineconstexpr

◆ fill_n

auto di::container::fill_n
inlineconstexpr

◆ find

auto di::container::find
inlineconstexpr

◆ find_end

auto di::container::find_end
inlineconstexpr

◆ find_first_not_of

auto di::container::find_first_not_of
inlineconstexpr

◆ find_first_of

auto di::container::find_first_of
inlineconstexpr

◆ find_if

auto di::container::find_if
inlineconstexpr

◆ find_if_not

auto di::container::find_if_not
inlineconstexpr

◆ find_last

auto di::container::find_last
inlineconstexpr

◆ find_last_if

auto di::container::find_last_if
inlineconstexpr

◆ find_last_if_not

auto di::container::find_last_if_not
inlineconstexpr

◆ find_last_not_of

auto di::container::find_last_not_of
inlineconstexpr

◆ find_last_of

auto di::container::find_last_of
inlineconstexpr

◆ fmod

auto di::fmod = math::detail::Fmod {}
inlineconstexpr

◆ fold_left

auto di::container::fold_left
inlineconstexpr

◆ fold_left_first

auto di::container::fold_left_first
inlineconstexpr

◆ fold_left_first_with_iter

◆ fold_left_with_iter

auto di::container::fold_left_with_iter
inlineconstexpr

◆ fold_right

auto di::container::fold_right
inlineconstexpr

◆ fold_right_last

auto di::container::fold_right_last
inlineconstexpr

◆ for_each

auto di::container::for_each
inlineconstexpr

◆ for_each_n

auto di::container::for_each_n
inlineconstexpr

◆ format

auto di::fmt::format
inlineconstexpr

◆ format_encoded_context

template<concepts::Encoding Enc>
auto di::fmt::format_encoded_context
inlineconstexpr

◆ format_error

auto di::format_error = vocab::detail::FormatError {}
inlineconstexpr

◆ formatter_in_place

auto di::fmt::formatter_in_place
inlineconstexpr

◆ from_container

auto di::types::from_container
inlineconstexpr

◆ from_json_string

template<concepts::Deserializable< JsonDeserializer< StringReader< container::StringView > > > T = json::Value>
auto di::serialization::from_json_string
inlineconstexpr

◆ front

auto di::container::front
inlineconstexpr

◆ front_unchecked

auto di::container::front_unchecked
inlineconstexpr

◆ gcd

auto di::math::gcd
inlineconstexpr

◆ generate_uuid

auto di::util::generate_uuid
inlineconstexpr

◆ get_cli_parser

template<typename T>
auto di::cli::get_cli_parser
inlineconstexpr

◆ get_in_place

auto di::util::get_in_place
inlineconstexpr

◆ get_named_argument

template<typename Arg>
auto di::util::get_named_argument
inlineconstexpr

A helper function to access a named argument.

Template Parameters
ArgThe type of the named argument.
Parameters
argsThe named arguments to access.
Returns
The value of the named argument.

This function is used to access a named argument from a list of named arguments. Note that it is a compile-time error to call this function with a named argument that is not present in the list of named arguments. Therefore, the concepts::HasNamedArgument concept should be used with an if constexpr block before calling this method. Otherwise, use the util::get_named_argument_or function.

Note
This function propogates the value-category of the passed named argument pack, which means that the named argument pack should be passed as an rvalue reference (unless of course, the named argument needs to be read multiple times).
See also
NamedArguments
get_named_argument_or

◆ get_named_argument_or

template<typename Arg>
auto di::util::get_named_argument_or
inlineconstexpr

A helper function to access a named argument or a fallback value.

Template Parameters
ArgThe type of the named argument.
Parameters
argsThe named arguments to access.
fallbackThe fallback value to use if the named argument is not present.
Returns
The value of the named argument or the fallback value.

This function is used to access a named argument from a list of named arguments. If the named argument is not present in the list of named arguments, the fallback value is returned instead. To prevent dangling references, the returned argument is decay copied out.

Note
This function propogates the value-category of the passed named argument pack, which means that, to avoid copies, the named should be passed as an rvalue reference (unless of course, the named argument needs to be read multiple times).
When passed a template argument, the value-category of the returned argument is unchaged, and the return type is inferred based on the presence of the named argument, instead of always returning a common type.
See also
NamedArguments

◆ greater

auto di::function::greater
inlineconstexpr

◆ has_single_bit

auto di::bit::has_single_bit
inlineconstexpr

◆ hash

auto di::container::hash
inlineconstexpr

◆ hash_write

auto di::container::hash_write
inlineconstexpr

◆ holds_alternative

template<typename T>
auto di::vocab::holds_alternative
inlineconstexpr

◆ host_to_big_endian

auto di::bit::host_to_big_endian
inlineconstexpr

◆ host_to_little_endian

auto di::bit::host_to_little_endian
inlineconstexpr

◆ identity

auto di::function::identity
inlineconstexpr

◆ if_error

auto di::vocab::if_error
inlineconstexpr

◆ if_success

auto di::vocab::if_success
inlineconstexpr

◆ in_place

auto di::types::in_place
inlineconstexpr

◆ in_place_template

template<template< typename... > typename Template>
auto di::types::in_place_template
inlineconstexpr

◆ in_place_type

template<typename T>
auto di::types::in_place_type
inlineconstexpr

◆ into_status_code

auto di::vocab::into_status_code
inlineconstexpr

◆ into_void

auto di::function::into_void
inlineconstexpr

◆ invoke

auto di::function::invoke
inlineconstexpr

◆ invoke_as_fallible

auto di::vocab::invoke_as_fallible
inlineconstexpr

◆ invoke_r

template<typename R>
auto di::function::invoke_r
inlineconstexpr

◆ ipc_binary_connect_to_client

template<concepts::InstanceOf< Protocol > Proto>
auto di::execution::ipc_binary_connect_to_client
inlineconstexpr

◆ ipc_binary_connect_to_server

template<concepts::InstanceOf< Protocol > Proto>
auto di::execution::ipc_binary_connect_to_server
inlineconstexpr

◆ is_heap

auto di::container::is_heap
inlineconstexpr

◆ is_heap_until

auto di::container::is_heap_until
inlineconstexpr

◆ is_partitioned

auto di::container::is_partitioned
inlineconstexpr

◆ is_permutation

auto di::container::is_permutation
inlineconstexpr

◆ is_sorted

auto di::container::is_sorted
inlineconstexpr

◆ is_sorted_until

auto di::container::is_sorted_until
inlineconstexpr

◆ json_format

auto di::serialization::json_format
inlineconstexpr

◆ lcm

auto di::math::lcm
inlineconstexpr

◆ less

auto di::function::less
inlineconstexpr

◆ lift_bool

auto di::vocab::lift_bool
inlineconstexpr

◆ little_endian_to_host

auto di::bit::little_endian_to_host
inlineconstexpr

◆ lower_bound

auto di::container::lower_bound
inlineconstexpr

◆ make_arc [1/2]

template<detail::IntrusivePtrValid< ArcTag > T>
auto di::vocab::make_arc
inlineconstexpr

◆ make_arc [2/2]

template<detail::IntrusivePtrValid< ArcTag > T>
auto di::vocab::make_arc
inlineconstexpr

◆ make_box [1/2]

template<typename T>
auto di::vocab::make_box
inlineconstexpr

◆ make_box [2/2]

template<typename T>
auto di::vocab::make_box
inlineconstexpr

◆ make_deferred

template<typename T>
auto di::function::make_deferred
constexpr

Creates a deferred function object.

Template Parameters
TThe type of the object to be constructed.
Parameters
argsThe arguments to be forwarded to the constructor of the object.
Returns
An invocable which produces a value or type T.

This function is useful for creating immovable or expensive objects. By only storing the constructor arguments, the object can be constructed at a later time.

◆ make_enumerators

template<container::FixedString enum_name, container::FixedString description = "">
auto di::reflection::make_enumerators
inlineconstexpr

◆ make_fields

template<container::FixedString class_name, container::FixedString description = "">
auto di::reflection::make_fields
inlineconstexpr

◆ make_from_tuple [1/2]

template<typename T>
auto di::vocab::make_from_tuple
inlineconstexpr

◆ make_from_tuple [2/2]

template<typename T>
auto di::vocab::make_from_tuple
inlineconstexpr

◆ make_function

template<concepts::LanguageFunction T, concepts::Allocator Alloc = platform::DefaultAllocator>
auto di::function::make_function
inlineconstexpr

◆ make_heap

auto di::container::make_heap
inlineconstexpr

◆ make_rc [1/2]

template<detail::IntrusivePtrValid< RcTag > T>
auto di::vocab::make_rc
inlineconstexpr

◆ make_rc [2/2]

template<detail::IntrusivePtrValid< RcTag > T>
auto di::vocab::make_rc
inlineconstexpr

◆ max

auto di::container::max
inlineconstexpr

◆ max_element

auto di::container::max_element
inlineconstexpr

◆ maybe_clone

auto di::util::maybe_clone
inlineconstexpr

◆ merge

auto di::container::merge
inlineconstexpr

◆ midpoint

auto di::math::midpoint
inlineconstexpr

◆ min

auto di::container::min
inlineconstexpr

◆ min_element

auto di::container::min_element
inlineconstexpr

◆ minmax

auto di::container::minmax
inlineconstexpr

◆ minmax_element

auto di::container::minmax_element
inlineconstexpr

◆ minus

auto di::function::minus
inlineconstexpr

◆ mismatch

auto di::container::mismatch
inlineconstexpr

◆ multiplies

auto di::function::multiplies
inlineconstexpr

◆ next

auto di::container::next
inlineconstexpr

◆ next_permutation

auto di::container::next_permutation
inlineconstexpr

◆ none_of

auto di::container::none_of
inlineconstexpr

◆ not_equal

auto di::function::not_equal
inlineconstexpr

◆ nullopt

auto di::vocab::nullopt
inlineconstexpr

◆ overload

auto di::function::overload
inlineconstexpr

◆ parse [1/2]

template<typename T>
auto di::parser::parse
inlineconstexpr

◆ parse [2/2]

template<typename T>
auto di::parser::parse
inlineconstexpr

◆ parse_partial [1/2]

template<typename T>
auto di::parser::parse_partial
inlineconstexpr

◆ parse_partial [2/2]

template<typename T>
auto di::parser::parse_partial
inlineconstexpr

◆ parse_unchecked [1/2]

template<typename T>
auto di::parser::parse_unchecked
inlineconstexpr

◆ parse_unchecked [2/2]

template<typename T>
auto di::parser::parse_unchecked
inlineconstexpr

◆ partition

auto di::container::partition
inlineconstexpr

◆ partition_copy

auto di::container::partition_copy
inlineconstexpr

◆ partition_point

auto di::container::partition_point
inlineconstexpr

◆ piecewise_construct

auto di::types::piecewise_construct
inlineconstexpr

◆ plus

auto di::function::plus
inlineconstexpr

◆ pop_heap

auto di::container::pop_heap
inlineconstexpr

◆ popcount

auto di::bit::popcount
inlineconstexpr

◆ prev

auto di::container::prev
inlineconstexpr

◆ prev_permutation

auto di::container::prev_permutation
inlineconstexpr

◆ product

auto di::container::product
inlineconstexpr

◆ proj

auto di::function::proj
inlineconstexpr

◆ push_heap

auto di::container::push_heap
inlineconstexpr

◆ rbegin

auto di::container::rbegin
inlineconstexpr

◆ read_all

auto di::io::read_all
inlineconstexpr

◆ read_exactly

auto di::io::read_exactly
inlineconstexpr

◆ read_some

auto di::io::read_some
inlineconstexpr

◆ read_to_string

auto di::io::read_to_string
inlineconstexpr

◆ reconstruct

auto di::container::reconstruct
inlineconstexpr

◆ ref

auto di::util::ref
inlineconstexpr

◆ reflect

auto di::reflection::reflect
inlineconstexpr

◆ relocate

auto di::util::relocate
inlineconstexpr

◆ remainder

auto di::remainder = math::detail::Remainder {}
inlineconstexpr

◆ remove_copy

auto di::container::remove_copy
inlineconstexpr

◆ remove_copy_if

auto di::container::remove_copy_if
inlineconstexpr

◆ rend

auto di::container::rend
inlineconstexpr

◆ replace

auto di::container::replace
inlineconstexpr

◆ replace_copy

auto di::container::replace_copy
inlineconstexpr

◆ replace_copy_if

auto di::container::replace_copy_if
inlineconstexpr

◆ replace_if

auto di::container::replace_if
inlineconstexpr

◆ representable_as [1/2]

template<concepts::Integer T>
auto di::math::representable_as
inlineconstexpr

◆ representable_as [2/2]

template<concepts::Integer T>
auto di::math::representable_as
inlineconstexpr

◆ retain_object [1/2]

auto di::vocab::retain_object
inlineconstexpr

◆ retain_object [2/2]

auto di::vocab::retain_object
inlineconstexpr

◆ reverse_copy

auto di::container::reverse_copy
inlineconstexpr

◆ rotate

auto di::container::rotate
inlineconstexpr

◆ rotate_copy

auto di::container::rotate_copy
inlineconstexpr

◆ rotl

auto di::bit::rotl
inlineconstexpr

◆ rotr

auto di::bit::rotr
inlineconstexpr

◆ round

auto di::round = math::detail::Round {}
inlineconstexpr

◆ run_parser [1/2]

auto di::parser::run_parser
inlineconstexpr

◆ run_parser [2/2]

auto di::parser::run_parser
inlineconstexpr

◆ run_parser_partial [1/2]

auto di::parser::run_parser_partial
inlineconstexpr

◆ run_parser_partial [2/2]

auto di::parser::run_parser_partial
inlineconstexpr

◆ run_parser_unchecked [1/2]

auto di::parser::run_parser_unchecked
inlineconstexpr

◆ run_parser_unchecked [2/2]

auto di::parser::run_parser_unchecked
inlineconstexpr

◆ search

auto di::container::search
inlineconstexpr

◆ search_n

auto di::container::search_n
inlineconstexpr

◆ send

auto di::execution::send
inlineconstexpr

◆ sequence

auto di::container::sequence
inlineconstexpr

◆ serialize

auto di::serialization::serialize
inlineconstexpr

◆ serialize_binary

◆ serialize_json

auto di::serialization::serialize_json
inlineconstexpr

◆ serialize_size

auto di::serialization::serialize_size
inlineconstexpr

◆ serialize_string

◆ serializer

auto di::serialization::serializer
inlineconstexpr

◆ set_difference

auto di::container::set_difference
inlineconstexpr

◆ set_intersection

auto di::container::set_intersection
inlineconstexpr

◆ set_symmetric_difference

◆ set_union

auto di::container::set_union
inlineconstexpr

◆ shift_left

auto di::container::shift_left
inlineconstexpr

◆ shift_right

auto di::container::shift_right
inlineconstexpr

◆ shuffle

auto di::container::shuffle
inlineconstexpr

◆ signbit

auto di::signbit = math::detail::Signbit {}
inlineconstexpr

◆ sin

auto di::sin = math::detail::Sin {}
inlineconstexpr

◆ size

auto di::container::size
inlineconstexpr

◆ sort

auto di::container::sort
inlineconstexpr

◆ sort_heap

auto di::container::sort_heap
inlineconstexpr

◆ ssize

auto di::container::ssize
inlineconstexpr

◆ stable_partition

auto di::container::stable_partition
inlineconstexpr

◆ starts_with

auto di::container::starts_with
inlineconstexpr

◆ stopped

auto di::execution::stopped
inlineconstexpr

◆ sum

auto di::container::sum
inlineconstexpr

◆ swap

◆ swap_ranges

auto di::container::swap_ranges
inlineconstexpr

◆ sync_wait

auto di::execution::sync_wait
inlineconstexpr

◆ sync_wait_on

auto di::execution::sync_wait_on
inlineconstexpr

◆ sync_wait_with_variant

◆ sync_wait_with_variant_on

◆ tag_invoke

tag_invoke_detail::TagInvokeFn di::function::tag_invoke_ns::tag_invoke
inlineconstexpr

◆ tie [1/2]

auto di::vocab::tie
inlineconstexpr

◆ tie [2/2]

auto di::vocab::tie
inlineconstexpr

◆ time_point_cast

template<concepts::InstanceOf< Duration > To>
auto di::chrono::time_point_cast
inlineconstexpr

◆ to_address

auto di::util::to_address
inlineconstexpr

◆ to_json_string

auto di::serialization::to_json_string
inlineconstexpr

◆ to_owned

auto di::util::to_owned
inlineconstexpr

◆ to_signed

auto di::math::to_signed
inlineconstexpr

◆ to_string

auto di::fmt::to_string
inlineconstexpr

◆ to_transparent_string

◆ to_uintptr

auto di::util::to_uintptr
inlineconstexpr

◆ to_underlying

auto di::util::to_underlying
inlineconstexpr

◆ to_unsigned

auto di::math::to_unsigned
inlineconstexpr

◆ to_utf8_string

◆ to_utf8_string_lossy

◆ try_infallible

auto di::vocab::try_infallible
inlineconstexpr

◆ try_to_lock

auto di::sync::try_to_lock
inlineconstexpr

◆ tuple_sequence [1/2]

template<typename R>
auto di::vocab::tuple_sequence
inlineconstexpr

◆ tuple_sequence [2/2]

template<typename R>
auto di::vocab::tuple_sequence
inlineconstexpr

◆ type_name

template<concepts::Reflectable T, typename M = Reflect<T>>
auto di::reflection::type_name
inlineconstexpr

◆ uncurry

auto di::function::uncurry
inlineconstexpr

◆ unexpect

auto di::types::unexpect
inlineconstexpr

◆ uninitialized_copy

auto di::container::uninitialized_copy
inlineconstexpr

◆ uninitialized_copy_n

◆ uninitialized_default_construct

◆ uninitialized_default_construct_n

◆ uninitialized_fill

auto di::container::uninitialized_fill
inlineconstexpr

◆ uninitialized_fill_n

◆ uninitialized_move

auto di::container::uninitialized_move
inlineconstexpr

◆ uninitialized_move_n

◆ uninitialized_relocate

◆ uninitialized_relocate_backwards

◆ uninitialized_value_construct

◆ uninitialized_value_construct_n

◆ unique

auto di::container::unique
inlineconstexpr

◆ unique_copy

auto di::container::unique_copy
inlineconstexpr

◆ unsafe_forget

auto di::unsafe_forget = util::detail::UnsafeForget {}
inlineconstexpr

Steal ownership of an object and do not its destructor.

You should literally never use this function. Code which requires it is not doing type erasure correctly.

◆ unwrap_reference

auto di::util::unwrap_reference
inlineconstexpr

◆ upper_bound

auto di::container::upper_bound
inlineconstexpr

◆ valid_enum_value

auto di::reflection::valid_enum_value
inlineconstexpr

◆ voidify

auto di::util::voidify
inlineconstexpr

◆ write_exactly

auto di::io::write_exactly
inlineconstexpr

◆ write_some

auto di::io::write_some
inlineconstexpr

◆ writer_print

template<concepts::Encoding Enc>
auto di::io::writer_print
inlineconstexpr

◆ writer_println

template<concepts::Encoding Enc>
auto di::io::writer_println
inlineconstexpr

◆ ycombinator

auto di::function::ycombinator
inlineconstexpr