Arene Base
Fundamental Utilities For Safety Critical C++
Loading...
Searching...
No Matches
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 1234]
 CAdaptorMixin
 Carene::base::array< T, N >A fixed-size array of T objects
 Carene::base::array< IndexType, mdspan_detail::extent_sequence< Extents... >::rank_dynamic >
 Carene::base::array< inline_container::detail::unsafe_element_storage< T >, Capacity >
 Carene::base::array< T, 0 >Specialize for zero-sized arrays as 'T array[0]' is not standards compliant
 Carene::base::array< T, Capacity >
 Carene::base::atomic_monotonic_counterA thread-safe atomic counter
 Carene::base::barrier< CompletionFunction >A backport of std::barrier from C++20
 Carene::base::barrier< CompletionFunction >::arrival_tokenA class holding the result of a call to arrive, which can then be passed to wait to wait for the end of the completion step associated with the call to arrive
 Carene::base::const_vector_reference< T >A const reference class to an inline_vector object, with size-erased type
 Carene::base::default_accessor< ElementType >Accesses a single element from a pointer and an index
 Carene::base::ebo_holder< Tag, Value, bool >A class to hold an instance of a type that is likely to be empty, such as a comparator or allocator, making use of the empty base class optimization if possible
 Carene::base::ebo_holder< bound_args_tag< perfect_forward_call_wrapper< not_fn_policy, BoundFunc, BoundArgs... > >, std::tuple< BoundArgs... > >
 Carene::base::ebo_holder< bound_args_tag< perfect_forward_call_wrapper< Policy, Func, BoundArgs... > >, std::tuple< BoundArgs... > >
 Carene::base::ebo_holder< integral_constant< size_t, I >, remove_const_t< T > >
 Carene::base::ebo_holder< invoke_tag< perfect_forward_call_wrapper< not_fn_policy, BoundFunc, BoundArgs... > >, BoundFunc >
 Carene::base::ebo_holder< invoke_tag< perfect_forward_call_wrapper< Policy, Func, BoundArgs... > >, Func >
 Carene::base::error_result_t< ErrorType >Intermediary type for constructing a result with a given error_type
 Carene::base::extent_slice< OffsetType, ExtentType, StrideType >Set of extent regularly spaced integer indices
 Carene::base::external_vector_detail::external_storage_base< ValueType >Base class for vector_interface that redirects via the storage_base base class of the derived class to access the external storage
 Carene::base::external_vector_detail::storage_base< T >Storage base class for external_vector
 Carene::base::filesystem::directory_handleClass to wrap a directory handle
 Carene::base::filesystem::error_codeA class representing a filesystem error value. Intended to be a wrapper around errno
 Carene::base::filesystem::file_handleAn RAII wrapper around a POSIX file handle with unique-ownership semantics
 Carene::base::filesystem::scoped_change_directoryA RAII helper to temporarily change the working directory of the process
 Carene::base::filesystem::temporary_directoryAn RAII helper class to manage a temporary directory
 Carene::base::full_extent_tTag class specifying the full extent of an mdspan
 Carene::base::function_ref< Signature, IsNoexcept >An implementation of the proposed std::function_ref from P0792. Provides a type-erased callable like std::function, but just stores a reference to the wrapped callable rather than a copy of it
 Carene::base::function_ref_detail::function_ref_base< false, IsNoexcept, R, Args... >
 Carene::base::generic_ordering_from_three_way_compare< Derived >Helper class that can be inherited from by a class to define the relational comparison operators in terms of a three_way_compare function provided by the Derived class, and an optional fast-inequality check heuristic
 Carene::base::generic_ordering_from_three_way_compare< const_inline_string_reference >
 Carene::base::generic_ordering_from_three_way_compare< inline_set< Value, Capacity, compare_three_way > >
 Carene::base::generic_ordering_from_three_way_compare< inline_string< MaxSize > >
 Carene::base::generic_ordering_from_three_way_compare< inline_string_reference >
 Carene::base::generic_ordering_from_three_way_compare< null_terminated_string_view >
 Carene::base::generic_ordering_from_three_way_compare< quantity< QuantityType, Rep > >
 Carene::base::generic_ordering_from_three_way_compare< reverse_iterator< Itr > >
 Carene::base::generic_ordering_from_three_way_compare< semantic_version >
 Carene::base::generic_ordering_from_three_way_compare< string_view >
 Carene::base::generic_ordering_from_three_way_compare_and_equals< Derived >Helper class that can be inherited from by a class to define the relational comparison operators in terms of a three_way_compare function provided by the Derived class, but preferentially implementing == and != to use operator==(Derived, Other) rather than three_way_compare
 Carene::base::generic_ordering_from_three_way_compare_and_equals< inline_map< Key, Value, Capacity, compare_three_way > >
 Carene::base::generic_ordering_from_three_way_compare_and_equals< non_null< P > >
 Carene::base::generic_ordering_from_three_way_compare_and_equals< optional< arene::base::testing::property_error > >
 Carene::base::generic_ordering_from_three_way_compare_and_equals< optional< T > >
 Carene::base::give_cv_to< From, To >Add the cv qualification from one type to another
 Carene::base::give_cvref_to< From, To >Add the cv-ref qualification from one type to another
 Carene::base::identityA backport of the C++20 std::identity function object. It returns its input unchanged
 Carene::base::implicit_constructor_base< T, bool, bool, bool, bool >A class that has the same implicit constructors as another type
 Carene::base::implicit_constructor_base< arene::base::testing::property_error >
 Carene::base::in_place_index_t< I >Backport of std::in_place_index_t<size_t> from C++17
 Carene::base::in_place_tBackport of std::in_place_t from C++17
 Carene::base::in_place_type_t< T >Backport of std::in_place_type_t<T> from C++17
 Carene::base::inline_deque_detail::ring_buffer_indices< Capacity, AllowWrapping >Ring-buffer indices independent of the contained value type
 Carene::base::inline_deque_detail::storage_wrapping_interface< inline_deque_internal_storage< T, Capacity, AllowWrapping >, AllowWrapping >
 Carene::base::inline_function< Signature, BufferSize, IsNoexcept >A function wrapper akin to std::function that always stores the wrapped invocable internally
 Carene::base::inline_function_detail::inline_function_base< BufferSize, false, IsNoexcept, ReturnType, Args... >
 Carene::base::inline_function_detail::inline_function_base< BufferSize, true, IsNoexcept, ReturnType, Args... >
 Carene::base::inline_map_detail::inline_map_base< Key, Value, compare_three_way >
 Carene::base::inline_map_detail::inline_map_passkey_base< MapBase >Private access for the family of types related to an inline_map
 Carene::base::inline_map_detail::inline_map_passkey_base< inline_map_detail::inline_map_base< Key, Value, compare_three_way > >
 Carene::base::inline_map_detail::inline_map_passkey_base< map_base_type >
 Carene::base::inline_map_reference_detail::const_inline_map_reference_interface< const_inline_map_reference< Key, Value, Compare > >
 Carene::base::inline_map_reference_detail::const_inline_map_reference_interface< inline_map_reference< Key, Value, Compare > >
 Carene::base::inline_string_detail::inline_string_baseBase class for inline_string which detemplatizes functionality not dependent on the buffer size
 Carene::base::inline_vector_detail::inline_vector_internal_non_constexpr_storage< T, Capacity, bool >Base class for inline_vector that holds the elements when the elements aren't usable in constexpr contexts
 Carene::base::inline_vector_detail::vector_base< T >Implementation details for inline_vector which depend on neither the capacity nor the storage mechanism
 Carene::base::inline_vector_detail::vector_base< Storage::value_type >
 Carene::base::integer_sequence_element< Index, Sequence, bool >Trait providing the Index th element of a std::integer_sequence. The value member holds the value. If Index is out of range, there is no value member
 Carene::base::integer_sequence_index_of< Sequence, Value, bool >Trait for the index of the first occurrence of a value in a std::integer_sequence
 Carene::base::intrusive::binary_tree_node< Tag >The tree node of the intrusive container. User type can be derived from this class to support intrusive containers. The parent_ points to itself for the root of a tree an indicator
 Carene::base::intrusive::priority_queue< T, Compare, Tag >The intrusive priority_queue. By default, the priority_queue is building a max heap where the element at the top is always the largest. To build a min heap, pass a std::greater<> as the comparator
 Carene::base::intrusive::queue< T, Tag >Intrusive queue implementation
 Carene::base::intrusive::singly_linked_node< Tag >Singly linked hook. User type can be derived from this class to support intrusive containers
 Carene::base::is_invocable_detail::invoke_result< Fn, type_list< Args... > >
 Carene::base::latchBackport of std::latch from C++20. Provides a count-down latch that stays permanently signalled when the count reaches zero. For a given instance, every call to count_down or arrive_and_wait synchronizes-with every call to wait or arrive_and_wait, and every call to try_wait that returns true
 Carene::base::linalg::math_traits_impl::default_math_traits< T, typename >Default implementation of math_traits which uses member typedefs for mdspan and is empty for other T
 Carene::base::manual_reset_eventAn event class that allows blocking waits from an arbitrary number of threads that are then woken when the event is signalled. Additional calls to wait while the event is signalled will return immediately. If there are no waiting threads, the event can be reset to an unsignalled state
 Carene::base::monostateA monostate type that is a well-behaved empty value for variants
 Carene::base::non_constructible_dummyA special dummy class that cannot be constructed. It can be used as a substitute argument for copy/move constructors or assignment operators that should be deleted, or any other place where a type is required, but not desired
 Carene::base::null_terminated_string_view::sentinelThis type represents the sentinel of the range of characters
 Carene::base::nullopt_tEmpty class type used to indicate that arene::base::optional does not contain a value
 Carene::base::operators_detail::inequality_operator_mixin< Derived, Derived >
 Carene::base::operators_detail::inequality_operator_mixin< inline_vector< T, Capacity >, inline_vector< T, Capacity > >
 Carene::base::operators_detail::inequality_operator_mixin< variant< Ts... >, variant< Ts... > >
 Carene::base::operators_detail::ordering_operators_from_less_than_mixin< LhsType, RhsType >Helper class to define >, <= and >= operators in terms of the < operator with a left-hand operand of type LhsType and a right-hand operand of type RhsType
 Carene::base::operators_detail::ordering_operators_from_less_than_mixin< Derived, Derived >
 Carene::base::operators_detail::ordering_operators_from_less_than_mixin< inline_vector< T, Capacity >, inline_vector< T, Capacity > >
 Carene::base::operators_detail::ordering_operators_from_less_than_mixin< variant< Ts... >, variant< Ts... > >
 Carene::base::optional_resetter< Value >A simple class that resets an optional value in its destructor, unless dismissed
 Carene::base::priority_tag< N >A priority tag for overload resolution
 Carene::base::priority_tag< std::size_t{0}>A priority tag for overload resolution
 Carene::base::quantity_kind_detail::quantity_kind_origin_mixin< OptionalOrigin >
 Carene::base::quantity_kind_detail::quantity_kind_origin_mixin< units_detail::missing >Mixin base class for declaring the origin of a quantity kind
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< amount_of_substance >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< angular_measure >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< electric_current >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< Kind >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< length >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< luminous_intensity >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< mass >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< OptionalParentKind >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< scaled_unit< scaled_unit< radian, inverse_unit_scale_t< scales::pi > >, std::ratio< 180, 1 > > >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< thermodynamic_temperature >
 Carene::base::quantity_kind_detail::quantity_kind_parent_mixin< time >
 Carene::base::quantity_kind_detail::quantity_kind_unit_mixin< OptionalUnit >
 Carene::base::quantity_kind_detail::quantity_kind_unit_mixin< units_detail::missing >Mixin base class for declaring the unit of a quantity kind
 Carene::base::quantity_origin< Derived >CRTP base class used when defining a new quantity origin, e.g. absolute zero for temperature
 Carene::base::quantity_origin< absolute_zero >
 Carene::base::range_slice< FirstType, LastType, StrideType >Slice of integer indices given the first and last
 Carene::base::relative_origin< Derived, BaseOrigin >CRTP base class used when defining a new relative origin, e.g. zero celsius which is relative to zero Kelvin
 Carene::base::remove_cvref< T >Backport of std::remove_cvref
 Carene::base::repeat_type< N, T, Arg >Repeat a template argument a specified number of times
 Carene::base::repeat_type< 0UL, T, Arg >Repeat a template argument a specified number of times
 Carene::base::repeat_type_ex< N, T, U, Arg >Repeat a template argument a specified number of times with an extra leading template argument
 Carene::base::repeat_type_ex< 0UL, T, U, Arg >Repeat a template argument a specified number of times with an extra leading template argument
 Carene::base::reverse_iterator_detail::reverse_iterator_base< Itr >Base class for reverse_iterator providing operations that do not depend on pointer-ness of underlying iterator
 Carene::base::scope_guard< Func >RAII utility for executing logic on scope exit
 Carene::base::src_line_infoContainer for the location information associated with a line of source code
 Carene::base::static_if< V >A metaprogramming facility for selecting a branch statically without evaluating both branches apriori
 Carene::base::static_if< false >The definition when static_if gets a "false" condition
 Carene::base::static_if< true >The definition when static_if gets a "true" condition
 Carene::base::submdspan_mapping_result< LayoutMapping >Specializations of submdspan_mapping_result are returned by overloads of submdspan_mapping
 Carene::base::submdspan_subextents_type_detail::submdspan_subextents_type_impl< Extents, mdspan_detail::canonical_slice_t< Extents::index_type, SliceSpecifiers >... >
 Carene::base::testing::bitwise_uniform_distribution< T, typename >A uniform distribution to apply on top of a bit generator. Primary template (deliberately undefined)
 Carene::base::testing::bitwise_uniform_distribution< T, arene::base::constraints< std::enable_if_t< std::is_integral< T >::value > > >A uniform distribution to apply on top of a bit generator. SFINAE overload for integral types
 Carene::base::testing::equal_to_value< T >
 Carene::base::testing::ExternalVectorTest< T >::input_iterator_with_configurable_noexcept< U, OperatorsNoexcept >An input iterator pointing to any type whose operators have adjustable noexcept specifications
 Carene::base::testing::ExternalVectorTest< T >::throwing_bidirectional_iterator_of_tA bidirectional iterator of T which declares that it could throw, used in some noexcept tests
 Carene::base::testing::ExternalVectorTest< T >::throws_when_converted_to_tA type with a noexcept(false) conversion operator to T (doesn't actually throw, just declares it)
 Carene::base::testing::InlineVectorTest< Vector >::input_iterator_with_configurable_noexcept< U, OperatorsNoexcept >An input iterator pointing to any type whose operators have adjustable noexcept specifications
 Carene::base::testing::InlineVectorTest< Vector >::throwing_bidirectional_move_iterator_of_tA bidirectional iterator of T which declares that it could throw, used in some noexcept tests
 Carene::base::testing::InlineVectorTest< Vector >::throws_when_converted_to_tA type with a noexcept(false) conversion operator to T (doesn't actually throw, just declares it)
 Carene::base::testing::move_only_wrapper< ValueType >
 Carene::base::testing::prng_xoshiroPseudorandom number generator implementing the xoshiro256++ algorithm
 Carene::base::testing::property_configConfiguration for property run
 Carene::base::testing::property_errorError result of evaluating a property assertion
 Carene::base::testing::property_summaryResult of a property run
 Carene::base::testing::throws_without_nullptr< T >
 Carene::base::type_identity< T >Polyfill of std::type_identity added in C++20
 Carene::base::type_list< Tn >Empty struct that is a list of types - cheaper to instantiate than tuple
 Carene::base::type_lists::apply_each< TypeList, ToApply >Apply the given template individually to every element of the given type list
 Carene::base::type_lists::apply_each< TypeList< Types... >, ToApply >Apply the given template individually to every element of the given type list
 Carene::base::type_lists::at_detail::at_impl
 Carene::base::type_lists::contains_t< L0, T >Query if a type-list contains a given type
 Carene::base::type_lists::empty_t< L0 >Get whether the type list is empty
 Carene::base::type_lists::reverse< List >Reverses the types in a type list
 Carene::base::type_lists::reverse< List< Ts... > >Specialization for type-list-like types
 Carene::base::type_lists::sort< TypeList, ComparisonPredicate >Sort a type list. ComparisonPredicate<T1,T2>::value should be a constexpr bool that is true if T1 is ordered before T2, and false otherwise, for any pair of types T1 and T2 from the type list. The type member is an alias to the resulting type list, with the elements sorted according to the comparator, such that if ComparisonPredicate<T1,T2>::value is true, then T1 is before T2 in the resulting list. If neither ComparisonPredicate<T1,T2>::value nor ComparisonPredicate<T2,T1>::value is true then the whichever is first in TypeList appears first in the result
 Carene::base::type_lists::sort< TypeList< Types... >, ComparisonPredicate >Sort a type list. The type member type is an alias for an instantiation of TypeList holding the types in Types sorted according to ComparisonPredicate
 Carene::base::units::scales::piA class to represent a scale factor of Pi
 Carene::base::units_combination_traits< QuantityType1, QuantityType2 >Traits class with information about if and how a physical unit of type QuantityType1 can be combined with a physical unit of type QuantityType2
 Carene::base::units_combination_traits< QuantityType, QuantityType >Specialization to allow addition and subtraction of a quantity type from itself
 Carene::base::units_conversion_traits_detail::units_conversion_traits_impl< From, To, typename >Determine if the quantity type can be implicitly converted
 Carene::base::unwrap_ref_decay< T >Backport of std::unwrap_ref_decay from C++20
 Carene::base::unwrap_reference< T >Backport of std::unwrap_reference from C++20
 Carene::base::value_result_t< ValueType >Intermediary type for constructing a result with a given value_type
 Carene::base::value_result_t< void >Intermediary type for constructing a result with a void value
 Carene::base::variant_alternative< I, T >Traits to get the I-th type of a variant
 Carene::base::variant_alternative< I, T const >Implementation of variant_alternative for const variant with actual types
 Carene::base::variant_alternative< I, variant< Ts... > >Implementation of variant_alternative for variant with actual types
 Carene::base::vector_reference< T >A reference class to an inline_vector object, with size-erased type
 CBoolTrait
 Cconditional_t
 Cdetail::mixin_at
 Cfast_expand_sequence::template type
 Cfunction_traits
 Cinline_container::detail::compare_wrapper
 Cinline_container::detail::comparison_interface
 Cinline_container::detail::range_interface
 Cinline_container_detail::iterator_interface
 Cinline_container_detail::try_construct_interface
 Cinline_string_std_string_mixin
 Clayout_detail::strided_mapping_base
 Clayout_right::template mapping
 Cmdspan_detail::extent_sequence
 Cmember_pointer_traits
 Coptional_detail::optional_base
 Coptional_detail::optional_value_interface
 Cquantity_kind
 Cresult_detail::result_base
 Cspan_detail::span_base
 Cstd::add_const< Type >Add const to the provided type. The type member is an alias for the modified type
 Cstd::add_const< tuple_element< I, T >::type >
 Cstd::add_cv< Type >Add const and volatile to the provided type. The type member is an alias for the modified type
 Cstd::add_cv< tuple_element< I, T >::type >
 Cstd::add_lvalue_reference_detail::add_lvalue_reference< Type, class >Base case when Type is not referenceable
 Cstd::add_lvalue_reference_detail::add_lvalue_reference< Type, arene::base::constraints< Type & > >Add an lvalue reference onto Type
 Cstd::add_pointer_detail::add_pointer< Type, class >Base case for when Type is not referenceable or void
 Cstd::add_pointer_detail::add_pointer< Type, std::enable_if_t< internal::is_referenceable_v< Type >||std::is_void_v< Type > > >Add a pointer to the given type
 Cstd::add_rvalue_reference_detail::add_rvalue_reference< Type, class >Base case when Type is not referenceable
 Cstd::add_rvalue_reference_detail::add_rvalue_reference< Type, arene::base::constraints< Type && > >Add an rvalue reference onto Type
 Cstd::add_volatile< Type >Add volatile to the provided type. The type member is an alias for the modified type
 Cstd::add_volatile< tuple_element< I, T >::type >
 Cstd::back_insert_iterator_detail::adaptor_mixin< Container >Mixin used to define back_insert_iterator
 Cstd::char_traits< CharT >Forward declaration for the traits class to abstract character and string operations. No definition is provided
 Cstd::chrono::chrono_detail::check_conversion_overflow< FromPeriod, ToPeriod >Helper to detect if duration conversion would cause overflow
 Cstd::chrono::duration< Rep, Period >Forward declaration of duration class template
 Cstd::chrono::duration_values< Rep >A customizable trait to indicate the zero, lowest, and highest values of a given representation type
 Cstd::chrono::time_point< Clock, Duration >A class representing a single point in time for the given clock
 Cstd::common_type<... >Primary template for determining the common type of a set of types
 Cstd::common_type< chrono::duration< Rep1, Period1 >, chrono::duration< Rep2, Period2 > >Specialization of common_type for two duration types
 Cstd::common_type< common_type_t< T1, T2 >, Ts... >
 Cstd::common_type< T, T >
 Cstd::common_type_detail::common_type_3_or_more< Constraints, T1, T2, Ts >Primary template for computing common type of 3 or more types
 Cstd::common_type_detail::common_type_3_or_more< arene::base::constraints<>, T1, T2, Ts... >
 Cstd::common_type_detail::decayed_conditional_result< T1, T2, class >Primary template for decaying conditional result types
 Cstd::common_type_detail::decayed_conditional_result< T1, T2, arene::base::constraints< conditional_result_t< T1, T2 > > >Specialization that provides the decayed type of a conditional expression
 Cstd::conditional< Condition, TrueType, FalseType >Helper template for selecting types based on a condition. If the supplied Condition is true then the nested type member is an alias for TrueType otherwise it is an alias for FalseType
 Cstd::conditional< true, TrueType, FalseType >Helper template for selecting types based on a condition. If the supplied Condition is true then the nested type member is an alias for TrueType otherwise it is an alias for FalseType
 Cstd::decay< Type >Contains type, a conversion equivalent to those performed when passing function arguments by value
 Cstd::divides< T >Function object for performing division
 Cstd::divides< void >Function object that can be invoked for division, specialized for type deduction
 Cstd::enable_if< Condition, Type >Class to support constraining templates. Has a type member of the specified type if the Condition is true and no type member if the Condition is false
 Cstd::enable_if< true, Type >Specialization of a class to support constraining templates for the case that the condition is true which has a type member of the specified type
 Cstd::equal_to< T >Function object that can be invoked for equality comparisons
 Cstd::equal_to< void >Function object that can be invoked for equality comparisons, specialized for type deduction
 Cstd::greater< T >Function object that can be invoked for greater than comparisons
 Cstd::greater< void >Function object that can be invoked for greater than comparisons, specialized for type deduction
 Cstd::greater_equal< T >Function object that can be invoked for greater than or equal to comparisons
 Cstd::greater_equal< void >Function object that can be invoked for greater than or equal to comparisons, specialized for type deduction
 Cstd::hash_detail::default_hash< T, typename >Default implementation of std::hash implemented only for fundamental types, enumerations and pointers
 Cstd::hash_detail::fnv1a_hash< T >FNV-1a hash algorithm
 Cstd::ignore_detail::ignore_tA class that anything can be assigned to, and which discards the assigned object
 Cstd::initializer_list< T >Implementation of std::initializer_list for brace initialization
 Cstd::inner_product_detail::reduce_value_policy< Value >Reduce value policy for a C++14 compliant implementation
 Cstd::input_iterator_tagAn empty tag type corresponding to an input iterator
 Cstd::insert_iterator_detail::adaptor_mixin< Container >Mixin used to define insert_iterator
 Cstd::integer_sequence< Type, Ints >Implements a compile-time sequence of integers
 Cstd::integer_sequence_detail::fast_expand_sequence< T, DoDouble >Helper for quickly expanding the elements in a sequence
 Cstd::integer_sequence_detail::fast_expand_sequence< T, true >Specialization if the sequence can be doubled
 Cstd::integral_constant< Type, Value >A helper class to represent a compile-time constant with the specified type and value. Instances of the type are implicitly convertible to the specified type and are nullary-invocable, yielding the specified type. The result of such a conversion or invocation is the specified value. The value member is a constant of the specified type, holding the specified value
 Cstd::integral_constant< bool, !bool(BoolTrait::value)>
 Cstd::integral_constant< bool, !ratio_equal< R1, R2 >::value >
 Cstd::integral_constant< bool, !ratio_less< R1, R2 >::value >
 Cstd::integral_constant< bool, !ratio_less< R2, R1 >::value >
 Cstd::integral_constant< bool, fraction_less(fraction{R1::num, R1::den}, fraction{R2::num, R2::den})>
 Cstd::integral_constant< bool, has_overloaded_address_operator_v< T > >
 Cstd::integral_constant< bool, is_array_convertible_v< From, To > >
 Cstd::integral_constant< bool, is_inline_string_v< Type > >
 Cstd::integral_constant< bool, is_invocable_detail::is_invocable_r< false, Ret, Fn, Args... >::value >
 Cstd::integral_constant< bool, is_invocable_detail::is_invocable_r< false, void, Fn, Args... >::value >
 Cstd::integral_constant< bool, is_invocable_detail::is_invocable_r< true, Ret, Fn, Args... >::value >
 Cstd::integral_constant< bool, is_invocable_detail::is_invocable_r< true, void, Fn, Args... >::value >
 Cstd::integral_constant< bool, is_nothrow_only_explicitly_constructible_v< T, Args... > >
 Cstd::integral_constant< bool, is_one_of_v< T, Ts... > >
 Cstd::integral_constant< bool, is_only_explicitly_constructible_v< T, Args... > >
 Cstd::integral_constant< bool, R1::num==R2::num &&R1::den==R2::den >
 Cstd::integral_constant< bool, ratio_less< R2, R1 >::value >
 Cstd::integral_constant< bool, std::is_convertible< FromMapping::extents_type, ToMapping::extents_type >::value &&(std::is_same< layout_left::mapping< FromMapping::extents_type >, FromMapping >::value||std::is_same< layout_right::mapping< FromMapping::extents_type >, FromMapping >::value||std::is_same< layout_stride::mapping< FromMapping::extents_type >, FromMapping >::value)>
 Cstd::integral_constant< bool, Value >
 Cstd::integral_constant< bool, Value >< false >
 Cstd::integral_constant< bool, Value >< true >
 Cstd::integral_constant< cv_qualifier, function_traits< member_pointer_traits< F >::pointee_type >::member_function_cv_qualifier >
 Cstd::integral_constant< reference_qualifier, function_traits< member_pointer_traits< F >::pointee_type >::member_function_reference_qualifier >
 Cstd::integral_constant< size_t, 2 >
 Cstd::integral_constant< size_t, extent_v< T, 0 > >
 Cstd::integral_constant< size_t, rank_v< T > >
 Cstd::integral_constant< size_t, sizeof...(Types)>
 Cstd::integral_constant< std::size_t, 5 >
 Cstd::integral_constant< std::size_t, digits_for_integral_value< T >()>
 Cstd::integral_constant< std::size_t, integer_sequence_ops_detail::get_integer_sequence_count_of(Value, Sequence{})>
 Cstd::integral_constant< std::size_t, N >
 Cstd::integral_constant< std::size_t, sizeof...(Tn)>
 Cstd::integral_constant< std::size_t, variant_size_v< Variant > >
 Cstd::iterator< Category, T, Distance, Pointer, Reference >Base class to ease the definition of required types for simple iterators
 Cstd::iterator< output_iterator_tag, void, void, void, void >
 Cstd::iterator_traits_detail::iterator_traits_base< Iter, typename >Base type for non-iterator types
 Cstd::iterator_traits_detail::iterator_traits_base< Iter, arene::base::constraints< typename Iter::difference_type, typename Iter::value_type, typename Iter::reference, typename Iter::pointer, typename Iter::iterator_category > >Base type for iterator types
 Cstd::less< T >Function object that can be invoked for less than comparisons
 Cstd::less< void >Function object that can be invoked for less than comparisons, specialized for type deduction
 Cstd::less_equal< T >Function object that can be invoked for less than or equal to comparisons
 Cstd::less_equal< void >Function object that can be invoked for less than or equal to comparisons, specialized for type deduction
 Cstd::logical_and< T >Function object for performing logical AND (logical conjunction). Effectively calls operator&& on type T
 Cstd::logical_and< void >Function object for performing logical AND (logical conjunction), specialized for deduction of parameter and return type
 Cstd::logical_or< T >Function object for performing logical OR (logical disjunction). Effectively calls operator|| on type T
 Cstd::logical_or< void >Function object for performing logical OR (logical conjunction), specialized for deduction of parameter and return type
 Cstd::make_signed_detail::make_signed< Type, typename >Internal class providing std::make_signed
 Cstd::make_signed_detail::make_signed< char >Internal class providing std::make_signed for char
 Cstd::make_signed_detail::make_signed< char16_t >Internal class providing a signed type for char16_t
 Cstd::make_signed_detail::make_signed< char32_t >Internal class providing a signed type for char32_t
 Cstd::make_signed_detail::make_signed< Type, arene::base::constraints< enable_if_t< is_enum_v< Type > >, enable_if_t<!is_const_v< Type > >, enable_if_t<!is_volatile_v< Type > > > >Internal class providing std::make_signed for integral types that are already signed
 Cstd::make_signed_detail::make_signed< Type, arene::base::constraints< enable_if_t< is_integral_v< Type > >, enable_if_t< is_signed_v< Type > >, enable_if_t<!is_same_v< Type, bool > >, enable_if_t<!is_const_v< Type > >, enable_if_t<!is_volatile_v< Type > > > >Internal class providing std::make_signed for integral types that are already signed
 Cstd::make_signed_detail::make_signed< Type, arene::base::constraints< enable_if_t< is_integral_v< Type >||is_enum_v< Type > >, enable_if_t< is_const_v< Type > >, enable_if_t< is_volatile_v< Type > > > >Internal class providing std::make_signed for integral types or enumeration types that are const and volatile qualified
 Cstd::make_signed_detail::make_signed< Type, arene::base::constraints< enable_if_t< is_integral_v< Type >||is_enum_v< Type > >, enable_if_t< is_const_v< Type > >, enable_if_t<!is_volatile_v< Type > > > >Internal class providing std::make_signed for integral types or enumeration types that are const qualified
 Cstd::make_signed_detail::make_signed< Type, arene::base::constraints< enable_if_t< is_integral_v< Type >||is_enum_v< Type > >, enable_if_t< is_volatile_v< Type > >, enable_if_t<!is_const_v< Type > > > >Internal class providing std::make_signed for integral types or enumeration types that are volatile qualified
 Cstd::make_signed_detail::make_signed< unsigned char >Internal class providing std::make_signed for unsigned char
 Cstd::make_signed_detail::make_signed< unsigned int >Internal class providing std::make_signed for unsigned int
 Cstd::make_signed_detail::make_signed< unsigned long >Internal class providing std::make_signed for long
 Cstd::make_signed_detail::make_signed< unsigned long long >Internal class providing std::make_signed for unsigned long long
 Cstd::make_signed_detail::make_signed< unsigned short >Internal class providing std::make_signed for unsigned short
 Cstd::make_signed_detail::make_signed< wchar_t >Internal class providing a signed type for wchar_t
 Cstd::make_signed_detail::sized_signed< Size, typename >Internal class providing a signed type with a specified size
 Cstd::make_signed_detail::sized_signed< Size, arene::base::constraints< enable_if_t< Size==sizeof(char)> > >Internal class providing a signed type with the size of char
 Cstd::make_signed_detail::sized_signed< Size, arene::base::constraints< enable_if_t< Size==sizeof(short)> > >Internal class providing a signed type with the size of short
 Cstd::make_signed_detail::sized_signed< Size, arene::base::constraints< enable_if_t<(Size > sizeof(int))>, enable_if_t< Size==sizeof(long)> > >Internal class providing a signed type with the size of long
 Cstd::make_signed_detail::sized_signed< Size, arene::base::constraints< enable_if_t<(Size > sizeof(long))>, enable_if_t< Size==sizeof(long long)> > >Internal class providing a signed type with the size of long long
 Cstd::make_signed_detail::sized_signed< Size, arene::base::constraints< enable_if_t<(Size > sizeof(short))>, enable_if_t< Size==sizeof(int)> > >Internal class providing a signed type with the size of int
 Cstd::make_unsigned_detail::make_unsigned< Type, typename >Internal class providing std::make_unsigned
 Cstd::make_unsigned_detail::make_unsigned< char >Internal class providing std::make_unsigned for char
 Cstd::make_unsigned_detail::make_unsigned< char16_t >Internal class providing an unsigned type for char16_t
 Cstd::make_unsigned_detail::make_unsigned< char32_t >Internal class providing an unsigned type for char32_t
 Cstd::make_unsigned_detail::make_unsigned< int >Internal class providing std::make_unsigned for int
 Cstd::make_unsigned_detail::make_unsigned< long >Internal class providing std::make_unsigned for long
 Cstd::make_unsigned_detail::make_unsigned< long long >Internal class providing std::make_unsigned for long long
 Cstd::make_unsigned_detail::make_unsigned< short >Internal class providing std::make_unsigned for short
 Cstd::make_unsigned_detail::make_unsigned< signed char >Internal class providing std::make_unsigned for signed char
 Cstd::make_unsigned_detail::make_unsigned< Type, arene::base::constraints< enable_if_t< is_enum_v< Type > >, enable_if_t<!is_const_v< Type > >, enable_if_t<!is_volatile_v< Type > > > >Internal class providing std::make_unsigned for integral types that are already unsigned
 Cstd::make_unsigned_detail::make_unsigned< Type, arene::base::constraints< enable_if_t< is_integral_v< Type > >, enable_if_t<!is_signed_v< Type > >, enable_if_t<!is_same_v< Type, bool > >, enable_if_t<!is_const_v< Type > >, enable_if_t<!is_volatile_v< Type > > > >Internal class providing std::make_unsigned for integral types that are already unsigned
 Cstd::make_unsigned_detail::make_unsigned< Type, arene::base::constraints< enable_if_t< is_integral_v< Type >||is_enum_v< Type > >, enable_if_t< is_const_v< Type > >, enable_if_t< is_volatile_v< Type > > > >Internal class providing std::make_unsigned for integral types or enumeration types that are const and volatile qualified
 Cstd::make_unsigned_detail::make_unsigned< Type, arene::base::constraints< enable_if_t< is_integral_v< Type >||is_enum_v< Type > >, enable_if_t< is_const_v< Type > >, enable_if_t<!is_volatile_v< Type > > > >Internal class providing std::make_unsigned for integral types or enumeration types that are const qualified
 Cstd::make_unsigned_detail::make_unsigned< Type, arene::base::constraints< enable_if_t< is_integral_v< Type >||is_enum_v< Type > >, enable_if_t< is_volatile_v< Type > >, enable_if_t<!is_const_v< Type > > > >Internal class providing std::make_unsigned for integral types or enumeration types that are volatile qualified
 Cstd::make_unsigned_detail::make_unsigned< wchar_t >Internal class providing an unsigned type for wchar_t
 Cstd::make_unsigned_detail::sized_unsigned< Size, typename >Internal class providing an unsigned type with a specified size
 Cstd::make_unsigned_detail::sized_unsigned< Size, arene::base::constraints< enable_if_t< Size==sizeof(char)> > >Internal class providing an unsigned type with the size of char
 Cstd::make_unsigned_detail::sized_unsigned< Size, arene::base::constraints< enable_if_t< Size==sizeof(short)> > >Internal class providing an unsigned type with the size of short
 Cstd::make_unsigned_detail::sized_unsigned< Size, arene::base::constraints< enable_if_t<(Size > sizeof(int))>, enable_if_t< Size==sizeof(long)> > >Internal class providing an unsigned type with the size of long
 Cstd::make_unsigned_detail::sized_unsigned< Size, arene::base::constraints< enable_if_t<(Size > sizeof(long))>, enable_if_t< Size==sizeof(long long)> > >Internal class providing an unsigned type with the size of long long
 Cstd::make_unsigned_detail::sized_unsigned< Size, arene::base::constraints< enable_if_t<(Size > sizeof(short))>, enable_if_t< Size==sizeof(int)> > >Internal class providing an unsigned type with the size of int
 Cstd::minus< T >Function object for performing subtraction
 Cstd::minus< void >Function object that can be invoked for subtraction, specialized for type deduction
 Cstd::modulus< T >Function object for performing modulus
 Cstd::modulus< void >Function object that can be invoked for modulus, specialized for type deduction
 Cstd::move_iterator< Iterator >An iterator adaptor that wraps another iterator such that dereferencing the wrapped iterator yields an rvalue reference to the source value
 Cstd::multiplies< T >Function object for performing multiplication
 Cstd::multiplies< void >Function object that can be invoked for multiplication, specialized for type deduction
 Cstd::negate< T >Function object for performing negation
 Cstd::negate< void >Function object that can be invoked for negate, specialized for type deduction
 Cstd::not_equal_to< T >Function object that can be invoked for non-equality comparisons
 Cstd::not_equal_to< void >Function object that can be invoked for non-equality comparisons, specialized for type deduction
 Cstd::nothrow_tTag type used to disambiguate the overloads of throwing and non-throwing allocation functions
 Cstd::numeric_limits_detail::int_info< size_t >Internal helper to define properties for integer types
 Cstd::numeric_limits_detail::int_info< 1 >Internal helper to define properties for 1-byte integer types
 Cstd::numeric_limits_detail::int_info< 2 >Internal helper to define properties for 2-byte integer types
 Cstd::numeric_limits_detail::int_info< 4 >Internal helper to define properties for 4-byte integer types
 Cstd::numeric_limits_detail::int_info< 8 >Internal helper to define properties for 8-byte integer types
 Cstd::numeric_limits_detail::numeric_limits_impl< T, typename >Implementation template for numeric_limits
 Cstd::numeric_limits_detail::numeric_limits_impl< bool, arene::base::constraints<> >Specialization of the implementation template for numeric_limits for bool
 Cstd::numeric_limits_detail::numeric_limits_impl< double, arene::base::constraints<> >Specialization of the implementation template for numeric_limits for double
 Cstd::numeric_limits_detail::numeric_limits_impl< float, arene::base::constraints<> >Specialization of the implementation template for numeric_limits for float
 Cstd::numeric_limits_detail::numeric_limits_impl< T, arene::base::constraints< enable_if_t< is_integral_v< T > > > >Specialization of the implementation template for numeric_limits for integral types
 Cstd::output_iterator_tagAn empty tag type corresponding to an output iterator
 Cstd::piecewise_construct_tTag type for piecewise construction
 Cstd::plus< T >Function object for performing addition
 Cstd::plus< void >Function object that can be invoked for addition, specialized for type deduction
 Cstd::pointer_traits_detail::pointer_traits_difference_type< PointerLike, class >Determine the difference_type to expose in the pointer_traits
 Cstd::pointer_traits_detail::pointer_traits_difference_type< PointerLike, arene::base::constraints< enable_if_t< arene::base::substitution_succeeds< require_difference_type, PointerLike > > > >Determine the difference_type to expose in the pointer_traits
 Cstd::pointer_traits_detail::pointer_traits_element_type< PointerLike, class >Determine the element_type to expose in pointer_traits
 Cstd::pointer_traits_detail::pointer_traits_element_type< PointerLike, arene::base::constraints< enable_if_t< has_element_type_v< PointerLike > > > >Determine the element_type to expose in the pointer_traits
 Cstd::pointer_traits_detail::pointer_traits_element_type< PointerLike< T, Args... >, arene::base::constraints< enable_if_t<!has_element_type_v< PointerLike< T, Args... > > > > >Determine the element_type to expose in the pointer_traits
 Cstd::pointer_traits_detail::pointer_traits_impl< PointerLike, class >Define pointer_traits as empty when is_element_type_defined_v<PointerLike> is false
 Cstd::pointer_traits_detail::pointer_traits_impl< PointerLike, arene::base::constraints< enable_if_t< is_element_type_defined_v< PointerLike > > > >Define pointer_traits for the base case when is_element_type_defined_v is true
 Cstd::pointer_traits_detail::pointer_traits_impl< T >
 Cstd::pointer_traits_detail::pointer_traits_rebind< T, U, class >Determine the rebind to expose in the pointer_traits
 Cstd::pointer_traits_detail::pointer_traits_rebind< PointerLike< T, Args... >, U, arene::base::constraints< enable_if_t<!has_rebind_v< PointerLike< T, Args... >, U > > > >Determine the rebind to expose in the pointer_traits
 Cstd::pointer_traits_detail::pointer_traits_rebind< T, U, arene::base::constraints< enable_if_t< has_rebind_v< T, U > > > >Determine the rebind to expose in the pointer_traits
 Cstd::pointer_traits_detail::unspecifiedAn unspecified type to use as the input type for pointer_to
 Cstd::ratio< N, D >A compile-time ratio of two integers, automatically reduced to lowest terms
 Cstd::ratio_detail::fractionA type used to represent a fraction for non-template computations
 Cstd::ratio_detail::ratio_add_impl< R1, R2 >A helper for addition to enforce the type requirement in [ratio.general] and improve readability
 Cstd::ratio_detail::ratio_equal_impl< R1, R2 >A helper for equality comparison to enforce the type requirement in [ratio.general]
 Cstd::ratio_detail::ratio_less_impl< R1, R2 >A helper for less-than comparison to enforce the type requirement in [ratio.general]
 Cstd::ratio_detail::ratio_multiply_impl< R1, R2 >A helper for multiplication to enforce the type requirement in [ratio.general] and improve readability
 Cstd::reference_wrapper_detail::mixin_argument_types< TypeList >Add argument member types to reference wrapped functions and member function pointers. The types added depend on the number of arguments expected by the wrapped type. For member function pointers the class pointer is considered as the first argument
 Cstd::reference_wrapper_detail::mixin_argument_types< arene::base::function_arguments_t< std::remove_pointer_t< T > > >
 Cstd::reference_wrapper_detail::mixin_argument_types< arene::base::type_list< Arg > >One argument case, will add argument_type
 Cstd::reference_wrapper_detail::mixin_argument_types< arene::base::type_list< Arg1, Arg2 > >Two argument case, will add first_argument_type and second_argument_type
 Cstd::reference_wrapper_detail::mixin_argument_types< arene::base::type_lists::concat_t< arene::base::type_list< std::remove_reference_t< arene::base::member_function_pointer_traits< T >::implicit_argument_type > * >, arene::base::member_function_arguments_t< T > > >
 Cstd::reference_wrapper_detail::mixin_class_binary_argument_type< T, typename >Forward member types first_argument_type and second_argument_type from a reference wrapped class containing those member types, if present
 Cstd::reference_wrapper_detail::mixin_class_binary_argument_type< T, arene::base::constraints< typename T::first_argument_type, typename T::second_argument_type > >Case where first_argument_type and second_argument_type are present and forwarded
 Cstd::reference_wrapper_detail::mixin_class_result_type< T, typename >Forward member type result_type from a reference wrapped class containing that member type, if present
 Cstd::reference_wrapper_detail::mixin_class_result_type< T, arene::base::constraints< typename T::result_type > >Case where reference_type is present and forwarded
 Cstd::reference_wrapper_detail::mixin_class_unary_argument_type< T, typename >Forward member type argument_type from a reference wrapped class containing that member type, if present
 Cstd::reference_wrapper_detail::mixin_class_unary_argument_type< T, arene::base::constraints< typename T::argument_type > >Case where argument_type is present and forwarded
 Cstd::reference_wrapper_detail::mixin_function_types< T, typename >Add member types to reference_wrapper based on the underlying wrapped type
 Cstd::remove_all_extents< T >Removes all extents from the given array type
 Cstd::remove_all_extents< T[]>Removes all extents from the given array type
 Cstd::remove_all_extents< T[N]>Removes all extents from the given array type
 Cstd::remove_const< Type >Remove const from the provided type. The type member is an alias for the modified type
 Cstd::remove_const< Type const >Remove const from the provided type. The type member is an alias for the modified type
 Cstd::remove_cv< T >The type member is an alias for T, but with top-level const and/or volatile qualifiers removed
 Cstd::remove_cv< T const >The type member is an alias for T, but with top-level const and/or volatile qualifiers removed
 Cstd::remove_cv< T const volatile >The type member is an alias for T, but with top-level const and/or volatile qualifiers removed
 Cstd::remove_cv< T volatile >The type member is an alias for T, but with top-level const and/or volatile qualifiers removed
 Cstd::remove_extent< T >Removes the first extent from the given array type
 Cstd::remove_extent< T[]>Removes the first extent from the given array type
 Cstd::remove_extent< T[N]>Removes the first extent from the given array type
 Cstd::remove_pointer< T >The type member is an alias for the type pointed to by T, or the same as T if it is not a pointer
 Cstd::remove_pointer< T * >The type member is an alias for the type pointed to by T, or the same as T if it is not a pointer
 Cstd::remove_pointer< T *const >The type member is an alias for the type pointed to by T, or the same as T if it is not a pointer
 Cstd::remove_pointer< T *const volatile >The type member is an alias for the type pointed to by T, or the same as T if it is not a pointer
 Cstd::remove_pointer< T *volatile >The type member is an alias for the type pointed to by T, or the same as T if it is not a pointer
 Cstd::remove_reference< T >The type member is an alias for T, but with top-level reference qualifiers removed
 Cstd::remove_reference< T & >The type member is an alias for T, but with top-level reference qualifiers removed
 Cstd::remove_reference< T && >The type member is an alias for T, but with top-level reference qualifiers removed
 Cstd::remove_volatile< Type >Remove volatile from the provided type. The type member is an alias for the modified type
 Cstd::remove_volatile< Type volatile >Remove volatile from the provided type. The type member is an alias for the modified type
 Cstd::stdexcept_detail::simple_stringA simple string class that manages a static storage size C-style string
 Cstd::tuple_detail::tuple_impl< Indices, Types >Helper used in the implementation of a tuple
 Cstd::tuple_detail::tuple_impl< index_sequence_for< Types... >, arene::base::type_list< Types... > >
 Cstd::tuple_element< I, T >Obtains the type of the specified element
 Cstd::tuple_element< 0, pair< T1, T2 > >Obtain the first type of a pair
 Cstd::tuple_element< 1, pair< T1, T2 > >Obtain the second type of a pair
 Cstd::tuple_element< I, tuple< Types... > >Obtain the element type at a given index
 Cstd::tuple_element< N, arene::base::array< T, ArrN > >Specialization of std::tuple_element for arene::base::array
 Cstd::tuple_size< T >Obtain the number of elements in a tuple-like type
 Cstd::underlying_type_detail::underlying_type< T, typename >Helper trait used to implement std::underlying_type
 Cstd::underlying_type_detail::underlying_type< T, arene::base::constraints< enable_if_t< is_enum_v< T > > > >Helper trait specialization used to implement std::underlying_type if T is an enumeration type
 CStorage
 Cstring_view_ostream_mixin
 Ctesting::Test
 CValue