|
struct | _swap_no_throw |
|
struct | _swappable_with_helper |
|
struct | _swappable_with_helper< T, U, void_t< decltype(swap(declval< T >(), declval< U >()))> > |
|
struct | add_const |
| Provides the member typedef type which is the same as T, except it has a cv-qualifier added (unless T is a function, a reference, or already has this cv-qualifier). Adds const. More...
|
|
struct | add_cv |
| Provides the member typedef type which is the same as T, except it has a cv-qualifier added (unless T is a function, a reference, or already has this cv-qualifier). Adds both const and volatile. More...
|
|
struct | add_lvalue_reference |
| Creates a lvalue reference type of T. More...
|
|
struct | add_pointer |
| If T is a reference type, then provides the member typedef type which is a pointer to the referred type. Otherwise, if T names an object type, a function type that is not cv- or ref-qualified, or a (possibly cv-qualified) void type, provides the member typedef type which is the type T*. Otherwise (if T is a cv- or ref-qualified function type), provides the member typedef type which is the type T. The behavior of a program that adds specializations for add_pointer is undefined. More...
|
|
struct | add_rvalue_reference |
| Creates a rvalue reference type of T. More...
|
|
struct | add_volatile |
| Provides the member typedef type which is the same as T, except it has a cv-qualifier added (unless T is a function, a reference, or already has this cv-qualifier). Adds volatile. More...
|
|
struct | adopt_lock_t |
| Empty struct tag types used to specify locking strategy for etl::lock_guard, etl::scoped_lock, etl::unique_lock, and etl::shared_lock. More...
|
|
struct | aligned_storage |
| Provides the nested type type, which is a trivial standard-layout type suitable for use as uninitialized storage for any object whose size is at most Len and whose alignment requirement is a divisor of Align. The default value of Align is the most stringent (the largest) alignment requirement for any object whose size is at most Len. If the default value is not used, Align must be the value of alignof(T) for some type T, or the behavior is undefined. More...
|
|
struct | aligned_union |
| Provides the nested type type, which is a trivial standard-layout type of a size and alignment suitable for use as uninitialized storage for an object of any of the types listed in Types. The size of the storage is at least Len. aligned_union also determines the strictest (largest) alignment requirement among all Types and makes it available as the constant alignment_value. If sizeof...(Types) == 0 or if any of the types in Types is not a complete object type, the behavior is undefined. It is implementation-defined whether any extended alignment is supported. The behavior of a program that adds specializations for aligned_union is undefined. More...
|
|
struct | alignment_of |
| alignment_of More...
|
|
struct | allocator_arg_t |
| allocator_arg_t is an empty class type used to disambiguate the overloads of constructors and member functions of allocator-aware objects. More...
|
|
struct | allocator_traits |
|
struct | array |
| A container that encapsulates fixed size arrays. More...
|
|
struct | assert_msg |
| Payload for an assertion. More...
|
|
struct | back_insert_iterator |
| etl::back_insert_iterator is a LegacyOutputIterator that appends to a container for which it was constructed. The container's push_back() member function is called whenever the iterator (whether dereferenced or not) is assigned to. Incrementing the etl::back_insert_iterator is a no-op. More...
|
|
struct | bad_function_call |
|
struct | bad_optional_access |
| Defines a type of object to be thrown by etl::optional::value when accessing an optional object that does not contain a value. More...
|
|
struct | bad_variant_access |
| etl::bad_variant_access is the type of the exception thrown in the following situations: (1) etl::get(etl::variant) called with an index or type that does not match the currently active alternative. (2) etl::visit called to visit a variant that is valueless_by_exception More...
|
|
struct | basic_bitset |
|
struct | basic_common_reference |
| The class template basic_common_reference is a customization point that allows users to influence the result of common_reference for user-defined types (typically proxy references). The primary template is empty. More...
|
|
struct | basic_common_reference< pair< T1, T2 >, pair< U1, U2 >, TQual, UQual > |
|
struct | basic_format_arg |
|
struct | basic_format_args |
|
struct | basic_format_context |
| Provides access to formatting state consisting of the formatting arguments and the output iterator. More...
|
|
struct | basic_format_parse_context |
|
struct | basic_format_string |
|
struct | basic_inplace_string |
| basic_inplace_string class with fixed size capacity. More...
|
|
struct | basic_string_view |
| The class template basic_string_view describes an object that can refer to a constant contiguous sequence of char-like objects with the first element of the sequence at position zero. A typical implementation holds only two members: a pointer to constant Char and a size. More...
|
|
struct | bernoulli_distribution |
|
struct | bidirectional_iterator_tag |
| Defines the category of an iterator. Each tag is an empty type and corresponds to one of the five (until C++20) six (since C++20) iterator categories. More...
|
|
struct | binary_t |
|
struct | bit_and |
| Function object for performing bitwise AND. Effectively calls operator& on type T. More...
|
|
struct | bit_and< void > |
|
struct | bit_not |
| Function object for performing bitwise NOT. Effectively calls operator~ on type T. More...
|
|
struct | bit_not< void > |
|
struct | bit_or |
| Function object for performing bitwise OR. Effectively calls operator| on type T. More...
|
|
struct | bit_or< void > |
|
struct | bit_xor |
| Function object for performing bitwise XOR. Effectively calls operator^ on type T. https://en.cppreference.com/w/cpp/utility/functional/bit_xor. More...
|
|
struct | bit_xor< void > |
|
struct | bitset |
| The class template bitset represents a fixed-size sequence of Bits bits. Bitsets can be manipulated by standard logic operators. More...
|
|
struct | char_traits |
| The char_traits class is a traits class template that abstracts basic character and string operations for a given character type. More...
|
|
struct | char_traits< char > |
| Specializations of char_traits for type char. More...
|
|
struct | char_traits< char16_t > |
| Specializations of char_traits for type char16_t. More...
|
|
struct | char_traits< char32_t > |
| Specializations of char_traits for type char32_t. More...
|
|
struct | char_traits< char8_t > |
| Specializations of char_traits for type char8_t. More...
|
|
struct | char_traits< wchar_t > |
| Specializations of char_traits for type wchar_t. More...
|
|
struct | common_comparison_category |
|
struct | common_reference |
| Determines the common reference type of the types T..., that is, the type to which all the types in T... can be converted or bound. If such a type exists (as determined according to the rules below), the member type names that type. Otherwise, there is no member type. The behavior is undefined if any of the types in T... is an incomplete type other than (possibly cv-qualified) void. More...
|
|
struct | common_reference< T0 > |
|
struct | common_reference< T1, T2 > |
|
struct | common_reference<> |
|
struct | common_type |
| Determines the common type among all types T... , that is the type all T... can be implicitly converted to. If such a type exists, the member type names that type. Otherwise, there is no member type. More...
|
|
struct | common_type< T > |
|
struct | common_type< T1, T2 > |
|
struct | common_type< T1, T2, R... > |
|
struct | compare_three_way_result |
|
struct | compare_three_way_result< T, U > |
|
struct | complex |
| A complex number. More...
|
|
struct | conditional |
| Provides member typedef type, which is defined as T if B is true at compile time, or as F if B is false. More...
|
|
struct | conditional< false, T, F > |
|
struct | conjunction |
| Forms the logical conjunction of the type traits B..., effectively performing a logical AND on the sequence of traits. More...
|
|
struct | contiguous_iterator_tag |
| Defines the category of an iterator. Each tag is an empty type and corresponds to one of the five (until C++20) six (since C++20) iterator categories. More...
|
|
struct | copy_cv |
|
struct | copy_cv< From const volatile, T0 > |
|
struct | copy_cv< From const, T0 > |
|
struct | copy_cv< From volatile, T0 > |
|
struct | coroutine_handle |
|
struct | coroutine_handle< void > |
|
struct | coroutine_traits |
|
struct | decay |
| Applies lvalue-to-rvalue, array-to-pointer, and function-to-pointer implicit conversions to the type T, removes cv-qualifiers, and defines the resulting type as the member typedef type. More...
|
|
struct | default_accessor |
|
struct | default_delete |
|
struct | default_delete< T[]> |
|
struct | default_searcher |
| Default searcher. A class suitable for use with Searcher overload of etl::search that delegates the search operation to the pre-C++17 standard library's etl::search. More...
|
|
struct | defer_lock_t |
| Empty struct tag types used to specify locking strategy for etl::lock_guard, etl::scoped_lock, etl::unique_lock, and etl::shared_lock. More...
|
|
struct | destroying_delete_t |
| Tag type used to identify the destroying delete form of operator delete. More...
|
|
struct | disjunction |
| Forms the logical disjunction of the type traits B..., effectively performing a logical OR on the sequence of traits. More...
|
|
struct | div_t |
| Return type for div. More...
|
|
struct | divides |
| Function object for performing division. Effectively calls operator/ on two instances of type T. https://en.cppreference.com/w/cpp/utility/functional/divides. More...
|
|
struct | divides< void > |
|
struct | domain_error |
|
struct | dynamic_array |
|
struct | empty_c_array |
|
struct | enable_if |
| Define a member typedef only if a boolean constant is true. More...
|
|
struct | enable_if< true, Type > |
|
struct | equal_to |
| Function object for performing comparisons. Unless specialised, invokes operator== on type T. https://en.cppreference.com/w/cpp/utility/functional/equal_to. More...
|
|
struct | equal_to< void > |
|
struct | exception |
|
struct | expected |
|
struct | extent |
| If T is an array type, provides the member constant value equal to the number of elements along the Nth dimension of the array, if N is in [0, rank_v<T>). For any other type, or if T is an array of unknown bound along its first dimension and N is 0, value is 0. More...
|
|
struct | extent< T[], 0 > |
|
struct | extent< T[], N > |
|
struct | extent< T[I], 0 > |
|
struct | extent< T[I], N > |
|
struct | extents |
|
struct | flat_multiset |
|
struct | flat_set |
| A flat_set is a container adaptor that provides an associative container interface that supports unique keys (contains at most one of each key value) and provides for fast retrieval of the keys themselves. flat_set supports random access iterators. Any sequence container supporting random access iteration can be used to instantiate flat_set. More...
|
|
struct | fnv1a |
|
struct | format_to_n_result |
| etl::format_to_n_result has no base classes, or members other than out, size and implicitly declared special member functions. More...
|
|
struct | formatter |
| The enabled specializations of formatter define formatting rules for a given type. Enabled specializations meet the Formatter requirements. More...
|
|
struct | formatter< char const *, char > |
|
struct | formatter< char, char > |
| Standard specializations for basic type char. More...
|
|
struct | formatter< char[N], char > |
|
struct | formatter< etl::inplace_string< Capacity >, char > |
|
struct | formatter< etl::string_view, char > |
|
struct | formatter< int, char > |
|
struct | formatter< long long, char > |
|
struct | formatter< long, char > |
|
struct | formatter< short, char > |
|
struct | formatter< unsigned long long, char > |
|
struct | formatter< unsigned long, char > |
|
struct | formatter< unsigned short, char > |
|
struct | formatter< unsigned, char > |
|
struct | forward_iterator_tag |
| Defines the category of an iterator. Each tag is an empty type and corresponds to one of the five (until C++20) six (since C++20) iterator categories. More...
|
|
struct | from_chars_result |
| Primitive numerical input conversion. More...
|
|
struct | front_insert_iterator |
| front_insert_iterator is an LegacyOutputIterator that prepends elements to a container for which it was constructed. More...
|
|
struct | full_extent_t |
|
struct | function_ref |
| Non-owning view of a callable. More...
|
|
struct | function_ref< R(Args...) noexcept > |
|
struct | function_ref< R(Args...)> |
|
struct | greater |
| Function object for performing comparisons. Unless specialised, invokes operator> on type T. https://en.cppreference.com/w/cpp/utility/functional/greater. More...
|
|
struct | greater< void > |
|
struct | greater_equal |
| Function object for performing comparisons. Unless specialised, invokes operator>= on type T. https://en.cppreference.com/w/cpp/utility/functional/greater_equal. More...
|
|
struct | greater_equal< void > |
|
struct | half |
|
struct | has_unique_object_representations |
| If T is TriviallyCopyable and if any two objects of type T with the same value have the same object representation, provides the member constant value equal true. For any other type, value is false. More...
|
|
struct | has_virtual_destructor |
| https://en.cppreference.com/w/cpp/types/has_virtual_destructor More...
|
|
struct | hash |
| hash More...
|
|
struct | hash< bool > |
|
struct | hash< char > |
|
struct | hash< char16_t > |
|
struct | hash< char32_t > |
|
struct | hash< char8_t > |
|
struct | hash< coroutine_handle< T > > |
|
struct | hash< double > |
|
struct | hash< etl::nullptr_t > |
|
struct | hash< etl::optional< T > > |
| The template specialization of etl::hash for the etl::optional class allows users to obtain hashes of the values contained in optional objects. More...
|
|
struct | hash< float > |
|
struct | hash< int > |
|
struct | hash< long > |
|
struct | hash< long double > |
|
struct | hash< long long > |
|
struct | hash< short > |
|
struct | hash< signed char > |
|
struct | hash< T * > |
|
struct | hash< unsigned char > |
|
struct | hash< unsigned int > |
|
struct | hash< unsigned long > |
|
struct | hash< unsigned long long > |
|
struct | hash< unsigned short > |
|
struct | hash< wchar_t > |
|
struct | identity |
| etl::identity is a function object type whose operator() returns its argument unchanged. More...
|
|
struct | idiv_result |
|
struct | ignore |
| An object of unspecified type such that any value can be assigned to it with no effect. Intended for use with etl::tie when unpacking a etl::tuple, as a placeholder for the arguments that are not used. More...
|
|
struct | imaxdiv_t |
| Return type for imaxdiv. More...
|
|
struct | in_place_index_t |
| Disambiguation tags that can be passed to the constructors of etl::optional, etl::variant, and etl::any to indicate that the contained object should be constructed in-place, and (for the latter two) the type of the object to be constructed. More...
|
|
struct | in_place_t |
| Disambiguation tags that can be passed to the constructors of optional , variant , and any to indicate that the contained object should be constructed in-place, and (for the latter two) the type of the object to be constructed. More...
|
|
struct | in_place_type_t |
| Disambiguation tags that can be passed to the constructors of etl::optional, etl::variant, and etl::any to indicate that the contained object should be constructed in-place, and (for the latter two) the type of the object to be constructed. More...
|
|
struct | incrementable_traits |
|
struct | incrementable_traits< T * > |
|
struct | incrementable_traits< T > |
|
struct | incrementable_traits< T const > |
|
struct | indirectly_readable_traits |
|
struct | indirectly_readable_traits< I > |
|
struct | indirectly_readable_traits< T * > |
|
struct | indirectly_readable_traits< T > |
|
struct | indirectly_readable_traits< T const > |
|
struct | inplace_function |
|
struct | inplace_function< R(Args...), Capacity, Alignment > |
|
struct | inplace_vector |
|
struct | inplace_vector< T, 0 > |
|
struct | input_iterator_tag |
| Defines the category of an iterator. Each tag is an empty type and corresponds to one of the five (until C++20) six (since C++20) iterator categories. More...
|
|
struct | integer_sequence |
|
struct | integral_constant |
|
struct | invalid_argument |
|
struct | invoke_result |
| Deduces the return type of an INVOKE expression at compile time. More...
|
|
struct | is_abstract |
|
struct | is_aggregate |
|
struct | is_arithmetic |
| If T is an arithmetic type (that is, an integral type or a floating-point type) or a cv-qualified version thereof, provides the member constant value equal true. For any other type, value is false. The behavior of a program that adds specializations for is_arithmetic or is_arithmetic_v (since C++17) is undefined. More...
|
|
struct | is_array |
| Checks whether T is an array type. Provides the member constant value which is equal to true, if T is an array type. Otherwise, value is equal to false. More...
|
|
struct | is_array< T[]> |
|
struct | is_array< T[N]> |
|
struct | is_assignable |
| If the expression etl::declval<T>() = etl::declval<U>() is well-formed in unevaluated context, provides the member constant value equal true. Otherwise, value is false. Access checks are performed as if from a context unrelated to either type. More...
|
|
struct | is_base_of |
| If Derived is derived from Base or if both are the same non-union class (in both cases ignoring cv-qualification), provides the member constant value equal to true. Otherwise value is false. More...
|
|
struct | is_bitmask_type |
|
struct | is_bounded_array |
| Checks whether T is an array type of known bound. Provides the member constant value which is equal to true, if T is an array type of known bound. Otherwise, value is equal to false. More...
|
|
struct | is_bounded_array< T[N]> |
|
struct | is_builtin_integer |
|
struct | is_builtin_signed_integer |
|
struct | is_builtin_unsigned_integer |
| True if T is unsigned char or unsigned short or unsigned int or unsigned long or unsigned long long More...
|
|
struct | is_class |
|
struct | is_compound |
| If T is a compound type (that is, array, function, object pointer, function pointer, member object pointer, member function pointer, reference, class, union, or enumeration, including any cv-qualified variants), provides the member constant value equal true. For any other type, value is false. More...
|
|
struct | is_const |
| If T is a const-qualified type (that is, const, or const volatile), provides the member constant value equal to true. For any other type, value is false. More...
|
|
struct | is_const< T const > |
|
struct | is_convertible |
| If the imaginary function definition To test() { return etl::declval<From>(); } is well-formed, (that is, either etl::declval<From>() can be converted to To using implicit conversions, or both From and To are possibly cv-qualified void), provides the member constant value equal to true. Otherwise value is false. For the purposes of this check, the use of etl::declval in the return statement is not considered an odr-use. Access checks are performed as if from a context unrelated to either type. Only the validity of the immediate context of the expression in the return statement (including conversions to the return type) is considered. More...
|
|
struct | is_copy_assignable |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_assignable<T&, T const&>::value. More...
|
|
struct | is_copy_constructible |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_constructible<T, T const&>::value. More...
|
|
struct | is_default_constructible |
| If etl::is_constructible<T>::value is true, provides the member constant value equal to true, otherwise value is false. More...
|
|
struct | is_destructible |
| Because the C++ program terminates if a destructor throws an exception during stack unwinding (which usually cannot be predicted), all practical destructors are non-throwing even if they are not declared noexcept. All destructors found in the C++ standard library are non-throwing. More...
|
|
struct | is_destructible< Type[]> |
|
struct | is_destructible< void > |
|
struct | is_empty |
| f T is an empty type (that is, a non-union class type with no non-static data members other than bit-fields of size 0, no virtual functions, no virtual base classes, and no non-empty base classes), provides the member constant value equal to true. For any other type, value is false. More...
|
|
struct | is_enum |
|
struct | is_error_condition_enum |
|
struct | is_error_condition_enum< errc > |
|
struct | is_execution_policy |
| Checks whether T is a standard or implementation-defined execution policy type. More...
|
|
struct | is_execution_policy< etl::execution::sequenced_policy > |
|
struct | is_execution_policy< etl::execution::unsequenced_policy > |
|
struct | is_final |
| If T is a final class (that is, a class declared with the final specifier), provides the member constant value equal true. For any other type, value is false. If T is a class type, T shall be a complete type; otherwise, the behavior is undefined. More...
|
|
struct | is_floating_point |
| Checks whether T is a floating-point type. Provides the member constant value which is equal to true, if T is the type float, double, long double, including any cv-qualified variants. Otherwise, value is equal to false. More...
|
|
struct | is_function |
|
struct | is_fundamental |
| If T is a fundamental type (that is, arithmetic type, void, or nullptr_t), provides the member constant value equal true. For any other type, value is false. More...
|
|
struct | is_implicit_default_constructible |
|
struct | is_implicit_default_constructible< T, decltype(test_implicit_default_constructible< T const & >({})), false_type > |
|
struct | is_implicit_default_constructible< T, decltype(test_implicit_default_constructible< T const & >({})), true_type > |
|
struct | is_integral |
|
struct | is_invocable |
|
struct | is_invocable_r |
|
struct | is_lvalue_reference |
| Checks whether T is a lvalue reference type. Provides the member constant value which is equal to true, if T is a lvalue reference type. Otherwise, value is equal to false. More...
|
|
struct | is_lvalue_reference< T & > |
|
struct | is_member_function_pointer |
| Checks whether T is a non-static member function pointer. Provides the member constant value which is equal to true, if T is a non-static member function pointer type. Otherwise, value is equal to false. More...
|
|
struct | is_member_object_pointer |
| Checks whether T is a non-static member object pointer. Provides the member constant value which is equal to true, if T is a non-static member object pointer type. Otherwise, value is equal to false. More...
|
|
struct | is_member_pointer |
| If T is pointer to non-static member object or a pointer to non-static member function, provides the member constant value equal true. For any other type, value is false. The behavior of a program that adds specializations for is_member_pointer or is_member_pointer_v (since C++17) is undefined. More...
|
|
struct | is_move_assignable |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_assignable<T&, T&&>::value. More...
|
|
struct | is_move_constructible |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_constructible<T, T&&>::value. More...
|
|
struct | is_nothrow_assignable |
| If the expression etl::declval<T>() = etl::declval<U>() is well-formed in unevaluated context, provides the member constant value equal true. Otherwise, value is false. Access checks are performed as if from a context unrelated to either type. More...
|
|
struct | is_nothrow_assignable< T, U > |
|
struct | is_nothrow_constructible |
| The variable definition does not call any operation that is not trivial. For the purposes of this check, the call to etl::declval is considered trivial. More...
|
|
struct | is_nothrow_convertible |
|
struct | is_nothrow_convertible< From, To > |
|
struct | is_nothrow_copy_assignable |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_nothrow_assignable<T&, T const&>::value. More...
|
|
struct | is_nothrow_copy_constructible |
| Same as copy, but uses etl::is_nothrow_constructible<T, T const&>. More...
|
|
struct | is_nothrow_default_constructible |
| If etl::is_nothrow_constructible<T>::value is true, provides the member constant value equal to true, otherwise value is false. More...
|
|
struct | is_nothrow_destructible |
| https://en.cppreference.com/w/cpp/types/is_destructible More...
|
|
struct | is_nothrow_destructible< Type & > |
|
struct | is_nothrow_destructible< Type && > |
|
struct | is_nothrow_destructible< Type[N]> |
|
struct | is_nothrow_move_assignable |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_assignable<T&, T&&>::value. More...
|
|
struct | is_nothrow_move_constructible |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_nothrow_constructible<T, T&&>::value. More...
|
|
struct | is_nothrow_swappable |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_nothrow_swappable_with<T&, T&>::value. More...
|
|
struct | is_nothrow_swappable_with |
|
struct | is_null_pointer |
|
struct | is_object |
| If T is an object type (that is any possibly cv-qualified type other than function, reference, or void types), provides the member constant value equal true. For any other type, value is false. More...
|
|
struct | is_placeholder |
|
struct | is_placeholder< detail::placeholder_type< N > > |
|
struct | is_placeholder< T const > |
|
struct | is_placeholder< T const volatile > |
|
struct | is_placeholder< T volatile > |
|
struct | is_pointer |
| Checks whether T is a pointer to object or a pointer to function (but not a pointer to member/member function). Provides the member constant value which is equal to true, if T is a object/function pointer type. Otherwise, value is equal to false. More...
|
|
struct | is_polymorphic |
|
struct | is_reference |
| If T is a reference type (lvalue reference or rvalue reference), provides the member constant value equal true. For any other type, value is false. The behavior of a program that adds specializations for is_reference or is_reference_v is undefined. More...
|
|
struct | is_reference< T & > |
|
struct | is_reference< T && > |
|
struct | is_reference_wrapper |
|
struct | is_reference_wrapper< reference_wrapper< U > > |
|
struct | is_rvalue_reference |
| Checks whether T is a rvalue reference type. Provides the member constant value which is equal to true, if T is a rvalue reference type. Otherwise, value is equal to false. More...
|
|
struct | is_rvalue_reference< T && > |
|
struct | is_same |
| If T and U name the same type (taking into account const/volatile qualifications), provides the member constant value equal to true. Otherwise value is false. More...
|
|
struct | is_same< T, T > |
|
struct | is_scalar |
| If T is a scalar type (that is a possibly cv-qualified arithmetic, pointer, pointer to member, enumeration, or etl::nullptr_t type), provides the member constant value equal true. For any other type, value is false. More...
|
|
struct | is_scoped_enum |
|
struct | is_scoped_enum< T > |
|
struct | is_signed |
| If T is an arithmetic type, provides the member constant value equal to true if T(-1) < T(0): this results in true for the floating-point types and the signed integer types, and in false for the unsigned integer types and the type bool. For any other type, value is false. More...
|
|
struct | is_specialized |
|
struct | is_specialized< Template, T, void_t< decltype(Template< T >{})> > |
|
struct | is_standard_layout |
| If T is a standard layout type (that is, a scalar type, a standard-layout class, or an array of such type/class, possibly cv-qualified), provides the member constant value equal to true. For any other type, value is false. More...
|
|
struct | is_swappable |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_swappable_with<T&, T&>::value. More...
|
|
struct | is_swappable_with |
|
struct | is_trivial |
| If T is TrivialType (that is, a scalar type, a trivially copyable class with a trivial default constructor, or array of such type/class, possibly cv-qualified), provides the member constant value equal to true. For any other type, value is false. More...
|
|
struct | is_trivially_assignable |
| If the expression etl::declval<T>() = etl::declval<U>() is well-formed in unevaluated context, provides the member constant value equal true. Otherwise, value is false. Access checks are performed as if from a context unrelated to either type. More...
|
|
struct | is_trivially_constructible |
| The variable definition does not call any operation that is not trivial. For the purposes of this check, the call to etl::declval is considered trivial. More...
|
|
struct | is_trivially_copy_assignable |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_trivially_assignable<T&, T const&>::value. More...
|
|
struct | is_trivially_copy_constructible |
| Same as copy, but uses etl::is_trivially_constructible<T, T const&>. More...
|
|
struct | is_trivially_copyable |
| If T is a TriviallyCopyable type, provides the member constant value equal to true. For any other type, value is false. The only trivially copyable types are scalar types, trivially copyable classes, and arrays of such types/classes (possibly cv-qualified). group is_trivial_copyable. More...
|
|
struct | is_trivially_default_constructible |
| If etl::is_trivially_constructible<T>::value is true, provides the member constant value equal to true, otherwise value is false. More...
|
|
struct | is_trivially_destructible |
| Storage occupied by trivially destructible objects may be reused without calling the destructor. More...
|
|
struct | is_trivially_move_assignable |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_assignable<T&, T&&>::value. More...
|
|
struct | is_trivially_move_constructible |
| If T is not a referenceable type (i.e., possibly cv-qualified void or a function type with a cv-qualifier-seq or a ref-qualifier), provides a member constant value equal to false. Otherwise, provides a member constant value equal to etl::is_trivially_constructible<T, T&&>::value. More...
|
|
struct | is_typename |
|
struct | is_unbounded_array |
| Checks whether T is an array type of unknown bound. Provides the member constant value which is equal to true, if T is an array type of unknown bound. Otherwise, value is equal to false. More...
|
|
struct | is_unbounded_array< T[]> |
|
struct | is_union |
|
struct | is_unsigned |
| If T is an arithmetic type, provides the member constant value equal to true if T(0) < T(-1): this results in true for the unsigned integer types and the type bool and in false for the signed integer types and the floating-point types. For any other type, value is false. The behavior of a program that adds specializations for is_unsigned or is_unsigned_v (since C++17) is undefined. More...
|
|
struct | is_void |
| Define a member typedef only if a boolean constant is true. More...
|
|
struct | is_volatile |
|
struct | is_volatile< T volatile > |
|
struct | iterator_traits |
| iterator_traits is the type trait class that provides uniform interface to the properties of LegacyIterator types. This makes it possible to implement algorithms only in terms of iterators. More...
|
|
struct | iterator_traits< T * > |
|
struct | layout_left |
|
struct | layout_right |
|
struct | layout_stride |
|
struct | ldiv_t |
| Return type for ldiv. More...
|
|
struct | length_error |
|
struct | less |
| Function object for performing comparisons. Unless specialised, invokes operator< on type T. https://en.cppreference.com/w/cpp/utility/functional/less. More...
|
|
struct | less< void > |
|
struct | less_equal |
| Function object for performing comparisons. Unless specialised, invokes operator<= on type T. https://en.cppreference.com/w/cpp/utility/functional/less_equal. More...
|
|
struct | less_equal< void > |
|
struct | lldiv_t |
| Return type for lldiv. More...
|
|
struct | lock_guard |
| The struct lock_guard is a mutex wrapper that provides a convenient RAII-style mechanism for owning a mutex for the duration of a scoped block. When a lock_guard object is created, it attempts to take ownership of the mutex it is given. When control leaves the scope in which the lock_guard object was created, the lock_guard is destructed and the mutex is released. The lock_guard struct is non-copyable. More...
|
|
struct | logic_error |
|
struct | logical_and |
| Function object for performing logical AND (logical conjunction). Effectively calls operator&& on type T. https://en.cppreference.com/w/cpp/utility/functional/logical_and. More...
|
|
struct | logical_and< void > |
|
struct | logical_not |
| Function object for performing logical NOT (logical negation). Effectively calls operator! for type T. https://en.cppreference.com/w/cpp/utility/functional/logical_not. More...
|
|
struct | logical_not< void > |
|
struct | logical_or |
| Function object for performing logical OR (logical disjunction). Effectively calls operator|| on type T. https://en.cppreference.com/w/cpp/utility/functional/logical_or. More...
|
|
struct | logical_or< void > |
|
struct | make_signed |
| If T is an integral (except bool) or enumeration type, provides the member typedef type which is the unsigned integer type corresponding to T, with the same cv-qualifiers. If T is signed or unsigned char, short, int, long, long long; the unsigned type from this list corresponding to T is provided. The behavior of a program that adds specializations for make_signed is undefined. More...
|
|
struct | make_unsigned |
| If T is an integral (except bool) or enumeration type, provides the member typedef type which is the unsigned integer type corresponding to T, with the same cv-qualifiers. If T is signed or unsigned char, short, int, long, long long; the unsigned type from this list corresponding to T is provided. The behavior of a program that adds specializations for make_unsigned is undefined. More...
|
|
struct | max_align_t |
| etl::max_align_t is a trivial standard-layout type whose alignment requirement is at least as strict (as large) as that of every scalar type. More...
|
|
struct | mdarray |
|
struct | mdspan |
|
struct | minus |
| Function object for performing subtraction. Effectively calls operator- on two instances of type T. https://en.cppreference.com/w/cpp/utility/functional/minus. More...
|
|
struct | minus< void > |
|
struct | modulus |
| Function object for computing remainders of divisions. Implements operator% for type T. https://en.cppreference.com/w/cpp/utility/functional/modulus. More...
|
|
struct | modulus< void > |
|
struct | monostate |
| Unit type intended for use as a well-behaved empty alternative in etl::variant. In particular, a variant of non-default-constructible types may list etl::monostate as its first alternative: this makes the variant itself default-constructible. More...
|
|
struct | monotonic_allocator |
|
struct | multiplies |
| Function object for performing multiplication. Effectively calls operator* on two instances of type T. https://en.cppreference.com/w/cpp/utility/functional/multiplies. More...
|
|
struct | multiplies< void > |
|
struct | negate |
| Function object for performing negation. Effectively calls operator- on an instance of type T. https://en.cppreference.com/w/cpp/utility/functional/negate. More...
|
|
struct | negate< void > |
|
struct | negation |
| Forms the logical negation of the type trait B. More...
|
|
struct | nontype_t |
|
struct | not_equal_to |
| Function object for performing comparisons. Unless specialised, invokes operator!= on type T. https://en.cppreference.com/w/cpp/utility/functional/not_equal_to. More...
|
|
struct | not_equal_to< void > |
|
struct | nothrow_t |
| etl::nothrow_t is an empty class type used to disambiguate the overloads of throwing and non-throwing allocation functions. More...
|
|
struct | nullopt_t |
| etl::nullopt_t is an empty class type used to indicate optional type with uninitialized state. In particular, etl::optional has a constructor with nullopt_t as a single argument, which creates an optional that does not contain a value. More...
|
|
struct | numeric_limits |
|
struct | numeric_limits< bool > |
|
struct | numeric_limits< char > |
|
struct | numeric_limits< char8_t > |
|
struct | numeric_limits< double > |
|
struct | numeric_limits< float > |
|
struct | numeric_limits< int > |
|
struct | numeric_limits< long > |
|
struct | numeric_limits< long double > |
|
struct | numeric_limits< long long > |
|
struct | numeric_limits< short > |
|
struct | numeric_limits< signed char > |
|
struct | numeric_limits< T const > |
|
struct | numeric_limits< T const volatile > |
|
struct | numeric_limits< T volatile > |
|
struct | numeric_limits< uint128 > |
|
struct | numeric_limits< unsigned char > |
|
struct | numeric_limits< unsigned int > |
|
struct | numeric_limits< unsigned long > |
|
struct | numeric_limits< unsigned long long > |
|
struct | numeric_limits< unsigned short > |
|
struct | optional |
| The class template optional manages an optional contained value, i.e. a value that may or may not be present. More...
|
|
struct | optional< T & > |
|
struct | out_of_range |
|
struct | output_iterator_tag |
| Defines the category of an iterator. Each tag is an empty type and corresponds to one of the five (until C++20) six (since C++20) iterator categories. More...
|
|
struct | overflow_error |
|
struct | overload |
|
struct | pair |
| etl::pair is a class template that provides a way to store two heterogeneous objects as a single unit. A pair is a specific case of a etl::tuple with two elements. If neither T1 nor T2 is a possibly cv-qualified class type with non-trivial destructor, or array thereof, the destructor of pair is trivial. More...
|
|
struct | partial_ordering |
|
struct | piecewise_construct_t |
| etl::piecewise_construct_t is an empty class tag type used to disambiguate between different functions that take two tuple arguments. More...
|
|
struct | plus |
| Function object for performing addition. Effectively calls operator+ on two instances of type T. https://en.cppreference.com/w/cpp/utility/functional/plus. More...
|
|
struct | plus< void > |
|
struct | pointer_int_pair |
| This struct implements a pair of a pointer and small integer. It is designed to represent this in the space required by one pointer by bitmangling the integer into the low part of the pointer. This can only be done for small integers: typically up to 3 bits, but it depends on the number of bits available according to pointer_like_traits for the type. More...
|
|
struct | pointer_int_pair_info |
|
struct | pointer_like_traits |
| A traits type that is used to handle pointer types and things that are just wrappers for pointers as a uniform entity. More...
|
|
struct | pointer_like_traits< pointer_int_pair< PtrT, IntBits, IntT, PtrTraits > > |
|
struct | pointer_like_traits< T * > |
| Provide pointer_like_traits for non-cvr pointers. More...
|
|
struct | pointer_like_traits< T const * > |
| Provide pointer_like_traits for const pointers. More...
|
|
struct | pointer_like_traits< T const > |
| Provide pointer_like_traits for const things. More...
|
|
struct | pointer_like_traits< uintptr_t > |
| Provide pointer_like_traits for uintptr_t. More...
|
|
struct | pointer_traits |
| The pointer_traits class template provides the standardized way to access certain properties of pointer-like types. More...
|
|
struct | pointer_traits< T * > |
| The pointer_traits class template provides the standardized way to access certain properties of pointer-like types. More...
|
|
struct | random_access_iterator_tag |
| Defines the category of an iterator. Each tag is an empty type and corresponds to one of the five (until C++20) six (since C++20) iterator categories. More...
|
|
struct | range_error |
|
struct | rank |
| If Type is an array type, provides the member constant value equal to the number of dimensions of the array. For any other type, value is 0. The behavior of a program that adds specializations for rank or rank_v is undefined. More...
|
|
struct | rank< T[]> |
|
struct | rank< T[N]> |
|
struct | ratio |
| The typename template provides compile-time rational arithmetic support. Each instantiation of this template exactly represents any finite rational number as long as its numerator Num and denominator Denom are representable as compile-time constants of type intmax_t. More...
|
|
struct | ratio_equal |
| Compares two ratio objects for equality at compile-time. If the ratios R1 and R2 are equal, provides the member constant value equal true. Otherwise, value is false. More...
|
|
struct | ratio_greater |
| Compares two ratio objects for equality at compile-time. If the ratio R1 is greater than the ratio R2, provides the member constant value equal true. Otherwise, value is false. More...
|
|
struct | ratio_greater_equal |
| Compares two ratio objects for equality at compile-time. If the ratio R1 is greater than or equal to the ratio R2, provides the member constant value equal true. Otherwise, value is false. More...
|
|
struct | ratio_less |
| Compares two ratio objects for equality at compile-time. If the ratio R1 is less than the ratio R2, provides the member constant value equal true. Otherwise, value is false. More...
|
|
struct | ratio_less_equal |
| Compares two ratio objects for equality at compile-time. If the ratio R1 is less than or equal to the ratio R2, provides the member constant value equal true. Otherwise, value is false. More...
|
|
struct | ratio_not_equal |
| Compares two ratio objects for equality at compile-time. If the ratios R1 and R2 are not equal, provides the member constant value equal true. Otherwise, value is false. More...
|
|
struct | reference_wrapper |
| reference_wrapper is a class template that wraps a reference in a copyable, assignable object. It is frequently used as a mechanism to store references inside standard containers (like etl::static_vector) which cannot normally hold references. Specifically, reference_wrapper is a CopyConstructible and CopyAssignable wrapper around a reference to object or reference to function of type T. Instances of reference_wrapper are objects (they can be copied or stored in containers) but they are implicitly convertible to T&, so that they can be used as arguments with the functions that take the underlying type by reference. If the stored reference is Callable, reference_wrapper is callable with the same arguments. More...
|
|
struct | remove_all_extents |
| If T is a multidimensional array of some type X, provides the member typedef type equal to X, otherwise type is T. The behavior of a program that adds specializations for remove_all_extents is undefined. More...
|
|
struct | remove_all_extents< T[]> |
|
struct | remove_all_extents< T[N]> |
|
struct | remove_const |
| Provides the member typedef type which is the same as T, except that its topmost cv-qualifiers are removed. Removes the topmost const. More...
|
|
struct | remove_const< Type const > |
|
struct | remove_cv |
| Provides the member typedef type which is the same as T, except that its topmost cv-qualifiers are removed. Removes the topmost const, or the topmost volatile, or both, if present. More...
|
|
struct | remove_cvref |
| If the type T is a reference type, provides the member typedef type which is the type referred to by T with its topmost cv-qualifiers removed. Otherwise type is T with its topmost cv-qualifiers removed. More...
|
|
struct | remove_extent |
| If T is an array of some type X, provides the member typedef type equal to X, otherwise type is T. Note that if T is a multidimensional array, only the first dimension is removed. The behavior of a program that adds specializations for remove_extent is undefined. More...
|
|
struct | remove_extent< T[]> |
|
struct | remove_extent< T[N]> |
|
struct | remove_pointer |
| Provides the member typedef type which is the type pointed to by T, or, if T is not a pointer, then type is the same as T. The behavior of a program that adds specializations for remove_pointer is undefined. More...
|
|
struct | remove_pointer< T * > |
|
struct | remove_pointer< T *const > |
|
struct | remove_pointer< T *const volatile > |
|
struct | remove_pointer< T *volatile > |
|
struct | remove_reference |
|
struct | remove_reference< T & > |
|
struct | remove_reference< T && > |
|
struct | remove_volatile |
| Provides the member typedef type which is the same as T, except that its topmost cv-qualifiers are removed. Removes the topmost volatile. More...
|
|
struct | remove_volatile< Type volatile > |
|
struct | reverse_iterator |
| reverse_iterator is an iterator adaptor that reverses the direction of a given iterator. In other words, when provided with a bidirectional iterator, reverse_iterator produces a new iterator that moves from the end to the beginning of the sequence defined by the underlying bidirectional iterator. This is the iterator returned by member functions rbegin() and rend() of the standard library containers. More...
|
|
struct | runtime_error |
|
struct | scope_exit |
| The class template scope_exit is a general-purpose scope guard intended to call its exit function when a scope is exited. More...
|
|
struct | small_ptr |
| Compressed pointer to specified size. Intended to be used as a drop in replacement for native pointers. More...
|
|
struct | smallest_size |
| Smallest unsigned integer type that can represent values in the range [0, N]. More...
|
|
struct | sorted_equivalent_t |
|
struct | sorted_unique_t |
|
struct | source_location |
| A class representing information about the source code, such as file names, line numbers, and function names. More...
|
|
struct | span |
| A non-owning view over a contiguous sequence of objects. More...
|
|
struct | stack |
| The stack class is a container adapter that gives the programmer the functionality of a stack - specifically, a LIFO (last-in, first-out) data structure. More...
|
|
struct | static_set |
| static_set is an associative container that contains a sorted set of unique objects of type Key. Sorting is done using the key comparison function Compare. More...
|
|
struct | static_vector |
| Dynamically-resizable fixed-capacity vector. More...
|
|
struct | strided_slice |
|
struct | string_constant |
|
struct | strong_ordering |
|
struct | submdspan_mapping_result |
|
struct | suspend_always |
|
struct | suspend_never |
|
struct | timespec |
|
struct | tm |
|
struct | to_chars_result |
| Primitive numerical output conversion. More...
|
|
struct | try_to_lock_t |
| Empty struct tag types used to specify locking strategy for etl::lock_guard, etl::scoped_lock, etl::unique_lock, and etl::shared_lock. More...
|
|
struct | tuple |
|
struct | tuple_element |
| Provides compile-time indexed access to the type of the elements of the array using tuple-like interface. More...
|
|
struct | tuple_element< I, array< T, N > > |
|
struct | tuple_element< I, etl::complex< T > > |
|
struct | tuple_element< I, pair< T1, T2 > > |
| The partial specializations of tuple_element for pairs provide compile-time access to the types of the pair's elements, using tuple-like syntax. The program is ill-formed if I >= 2. More...
|
|
struct | tuple_element< I, T const > |
|
struct | tuple_element< I, T const volatile > |
|
struct | tuple_element< I, T volatile > |
|
struct | tuple_element< I, tuple< Ts... > > |
|
struct | tuple_size |
|
struct | tuple_size< array< T, N > > |
| Provides access to the number of elements in an array as a compile-time constant expression. More...
|
|
struct | tuple_size< etl::complex< T > > |
|
struct | tuple_size< pair< T1, T2 > > |
| The partial specialization of tuple_size for pairs provides a compile-time way to obtain the number of elements in a pair, which is always 2, using tuple-like syntax. More...
|
|
struct | tuple_size< T const > |
|
struct | tuple_size< T const volatile > |
|
struct | tuple_size< T volatile > |
|
struct | tuple_size< tuple< Ts... > > |
|
struct | type_identity |
|
struct | uint128 |
|
struct | underflow_error |
|
struct | underlying_type |
| The underlying type of an enum. More...
|
|
struct | unexpect_t |
|
struct | unexpected |
|
struct | uniform_int_distribution |
|
struct | uniform_real_distribution |
|
struct | uninitialized_array |
|
struct | uninitialized_array< T, Size > |
|
struct | uninitialized_union |
|
struct | unique_lock |
| The struct unique_lock is a general-purpose mutex ownership wrapper allowing deferred locking, time-constrained attempts at locking, recursive locking, transfer of lock ownership, and use with condition variables. More...
|
|
struct | unwrap_ref_decay |
|
struct | unwrap_reference |
|
struct | unwrap_reference< reference_wrapper< T > > |
|
struct | uses_allocator |
| If T has a member typedef allocator_type which is convertible from Alloc, the member constant value is true. Otherwise value is false. More...
|
|
union | variadic_union |
|
union | variadic_union< T, Ts... > |
|
struct | variant |
|
struct | variant_alternative |
| Provides compile-time indexed access to the types of the alternatives of the possibly cv-qualified variant, combining cv-qualifications of the variant (if any) with the cv-qualifications of the alternative. More...
|
|
struct | variant_alternative< Idx, T const > |
|
struct | variant_alternative< Idx, T const volatile > |
|
struct | variant_alternative< Idx, T volatile > |
|
struct | variant_alternative< Idx, variant< Ts... > > |
|
struct | variant_size |
|
struct | variant_size< T const > |
|
struct | variant_size< T const volatile > |
|
struct | variant_size< T volatile > |
|
struct | variant_size< variant< Ts... > > |
|
struct | vector |
|
struct | weak_ordering |
|
struct | xorshift |
| https://en.wikipedia.org/wiki/Xorshift More...
|
|
struct | xoshiro128plus |
|
struct | xoshiro128plusplus |
|
struct | xoshiro128starstar |
|
|
template<typename T > |
constexpr auto | abs (complex< T > const &z) -> T |
|
constexpr auto | abs (double n) noexcept -> double |
|
constexpr auto | abs (float n) noexcept -> float |
|
constexpr auto | abs (int n) noexcept -> int |
| Computes the absolute value of an integer number. The behavior is undefined if the result cannot be represented by the return type. If abs is called with an unsigned integral argument that cannot be converted to int by integral promotion, the program is ill-formed.
|
|
constexpr auto | abs (long double n) noexcept -> long double |
|
constexpr auto | abs (long long n) noexcept -> long long |
|
constexpr auto | abs (long n) noexcept -> long |
|
template<typename Type > |
constexpr auto | abs (Type input) noexcept -> Type |
| Returns the absolute value.
|
|
template<typename InputIt , typename Type > |
constexpr auto | accumulate (InputIt first, InputIt last, Type init) noexcept -> Type |
| Computes the sum of the given value init and the elements in the range [first, last) .
|
|
template<typename InputIt , typename Type , typename BinaryOperation > |
constexpr auto | accumulate (InputIt first, InputIt last, Type init, BinaryOperation op) noexcept -> Type |
| Computes the sum of the given value init and the elements in the range [first, last) .
|
|
template<etl::builtin_integer Int> |
constexpr auto | add_sat (Int x, Int y) noexcept -> Int |
|
template<typename T >
requires (is_object_v<T>) |
constexpr auto | addressof (T &arg) noexcept -> T * |
| Obtains the actual address of the object or function arg, even in presence of overloaded operator&.
|
|
template<typename T >
requires (not is_object_v<T>) |
constexpr auto | addressof (T &arg) noexcept -> T * |
| Obtains the actual address of the object or function arg, even in presence of overloaded operator&.
|
|
template<typename T > |
auto | addressof (T const &&)=delete |
|
template<typename InputIt , typename OutputIt > |
constexpr auto | adjacent_difference (InputIt first, InputIt last, OutputIt destination) -> OutputIt |
|
template<typename InputIt , typename OutputIt , typename BinaryOperation > |
constexpr auto | adjacent_difference (InputIt first, InputIt last, OutputIt destination, BinaryOperation op) -> OutputIt |
| Computes the differences between the second and the first of each adjacent pair of elements of the range [first, last) and writes them to the range beginning at destination + 1. An unmodified copy of *first is written to *destination.
|
|
template<typename It , typename Distance > |
constexpr auto | advance (It &it, Distance n) -> void |
| Increments given iterator it by n elements.
|
|
auto | align (etl::size_t alignment, etl::size_t size, void *&ptr, etl::size_t &space) noexcept -> void * |
| Given a pointer ptr to a buffer of size space, returns a pointer aligned by the specified alignment for size number of bytes and decreases space argument by the number of bytes used for alignment. The first aligned address is returned.
|
|
template<typename F , typename Tuple > |
constexpr auto | apply (F &&f, Tuple &&t) -> decltype(auto) |
|
template<typename T > |
constexpr auto | arg (complex< T > const &z) noexcept -> T |
|
template<floating_point Float> |
constexpr auto | arg (Float f) noexcept -> complex< Float > |
|
template<integral Integer> |
constexpr auto | arg (Integer i) noexcept -> complex< double > |
|
template<typename T > |
constexpr auto | as_const (T &t) noexcept -> add_const_t< T > & |
| Forms lvalue reference to const type of t.
|
|
template<typename T > |
constexpr auto | as_const (T const &&) -> void=delete |
|
template<typename Assertion > |
auto | assert_handler (Assertion const &msg) -> void |
|
template<etl::size_t N, typename T > |
constexpr auto | assume_aligned (T *ptr) -> T * |
| Informs the implementation that the object ptr points to is aligned to at least N. The implementation may use this information to generate more efficient code, but it might only make this assumption if the object is accessed via the return value of assume_aligned.
|
|
constexpr auto | atof (char const *str) noexcept -> double |
| Interprets a floating point value in a byte string pointed to by str.
|
|
constexpr auto | atoi (char const *str) noexcept -> int |
| Interprets an integer value in a byte string pointed to by str. Discards any whitespace characters until the first non-whitespace character is found, then takes as many characters as possible to form a valid integer number representation and converts them to an integer value.
|
|
constexpr auto | atol (char const *str) noexcept -> long |
| Interprets an integer value in a byte string pointed to by str. Discards any whitespace characters until the first non-whitespace character is found, then takes as many characters as possible to form a valid integer number representation and converts them to an integer value.
|
|
constexpr auto | atoll (char const *str) noexcept -> long long |
| Interprets an integer value in a byte string pointed to by str. Discards any whitespace characters until the first non-whitespace character is found, then takes as many characters as possible to form a valid integer number representation and converts them to an integer value.
|
|
template<typename Container > |
constexpr auto | back_inserter (Container &container) -> back_insert_iterator< Container > |
| back_inserter is a convenience function template that constructs a back_insert_iterator for the container c with the type deduced from the type of the argument.
|
|
template<typename C > |
constexpr auto | begin (C &c) -> decltype(c.begin()) |
| Returns an iterator to the beginning of the given container c or array array. These templates rely on C::begin() having a reasonable implementation. Returns exactly c.begin(), which is typically an iterator to the beginning of the sequence represented by c. If C is a standard Container, this returns C::iterator when c is not const-qualified, and C::const_iterator otherwise. Custom overloads of begin may be provided for classes that do not expose a suitable begin() member function, yet can be iterated.
|
|
template<typename C > |
constexpr auto | begin (C const &c) -> decltype(c.begin()) |
|
template<typename T , etl::size_t N> |
constexpr auto | begin (T(&array)[N]) noexcept -> T * |
|
template<typename Func , typename... BoundArgs> |
constexpr auto | bind_front (Func &&func, BoundArgs &&... boundArgs) |
| The function template bind_front generates a forwarding call wrapper for f. Calling this wrapper is equivalent to invoking f with its first sizeof...(Args) parameters bound to args. In other words, bind_front(f,
bound_args...)(call_args...) is equivalent to invoke(f, bound_args..., call_args....).
|
|
template<typename To , typename From >
requires detail::bitcastable<To, From> |
constexpr auto | bit_cast (From const &src) noexcept -> To |
| Obtain a value of type To by reinterpreting the object representation of from. Every bit in the value representation of the returned To object is equal to the corresponding bit in the object representation of from.
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | bit_ceil (UInt x) noexcept -> UInt |
| Calculates the smallest integral power of two that is not smaller than x. If that value is not representable in UInt, the behavior is undefined. Call to this function is permitted in constant evaluation only if the undefined behavior does not occur.
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | bit_floor (UInt x) noexcept -> UInt |
| If x is not zero, calculates the largest integral power of two that is not greater than x. If x is zero, returns zero.
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | bit_width (UInt x) noexcept -> int |
| If x is not zero, calculates the number of bits needed to store the value x, that is, 1+⌊log2(x)⌋. If x is zero, returns zero.
|
|
auto | breakpoint () noexcept -> void |
| Unconditional breakpoint: attempts to temporarily halt the execution of the program and transfer control to the debugger.
|
|
auto | breakpoint_if_debugging () noexcept -> void |
| Conditional breakpoint: attempts to temporarily halt the execution of the program and transfer control to the debugger if it were able to determine that the debugger is present. Acts as a no-op otherwise.
|
|
template<integral Int> |
constexpr auto | byteswap (Int val) noexcept -> Int |
| Reverses the bytes in the given integer value n.
|
|
template<typename C > |
constexpr auto | cbegin (C const &c) noexcept(noexcept(begin(c))) -> decltype(begin(c)) |
|
template<typename C > |
constexpr auto | cend (C const &c) noexcept(noexcept(end(c))) -> decltype(end(c)) |
|
template<builtin_integer T, builtin_integer U> |
constexpr auto | cmp_equal (T t, U u) noexcept -> bool |
| Compare the values of two integers t and u. Unlike builtin comparison operators, negative signed integers always compare less than (and not equal to) unsigned integers: the comparison is safe against lossy integer conversion.
|
|
template<builtin_integer T, builtin_integer U> |
constexpr auto | cmp_greater (T t, U u) noexcept -> bool |
| Compare the values of two integers t and u. Unlike builtin comparison operators, negative signed integers always compare less than (and not equal to) unsigned integers: the comparison is safe against lossy integer conversion.
|
|
template<builtin_integer T, builtin_integer U> |
constexpr auto | cmp_greater_equal (T t, U u) noexcept -> bool |
| Compare the values of two integers t and u. Unlike builtin comparison operators, negative signed integers always compare less than (and not equal to) unsigned integers: the comparison is safe against lossy integer conversion.
|
|
template<builtin_integer T, builtin_integer U> |
constexpr auto | cmp_less (T t, U u) noexcept -> bool |
| Compare the values of two integers t and u. Unlike builtin comparison operators, negative signed integers always compare less than (and not equal to) unsigned integers: the comparison is safe against lossy integer conversion.
|
|
template<builtin_integer T, builtin_integer U> |
constexpr auto | cmp_less_equal (T t, U u) noexcept -> bool |
| Compare the values of two integers t and u. Unlike builtin comparison operators, negative signed integers always compare less than (and not equal to) unsigned integers: the comparison is safe against lossy integer conversion.
|
|
template<builtin_integer T, builtin_integer U> |
constexpr auto | cmp_not_equal (T t, U u) noexcept -> bool |
| Compare the values of two integers t and u. Unlike builtin comparison operators, negative signed integers always compare less than (and not equal to) unsigned integers: the comparison is safe against lossy integer conversion.
|
|
template<typename T > |
constexpr auto | conj (complex< T > const &z) noexcept -> complex< T > |
|
template<floating_point Float> |
constexpr auto | conj (Float f) noexcept -> complex< Float > |
|
template<integral Integer> |
constexpr auto | conj (Integer i) noexcept -> complex< double > |
|
template<typename T , typename... Args, typename = decltype(::new (etl::declval<void*>()) T(etl::declval<Args>()...))> |
constexpr auto | construct_at (T *p, Args &&... args) -> T * |
| Creates a T object initialized with arguments args... at given address p.
|
|
template<typename InputIt , typename OutputIt > |
constexpr auto | copy (InputIt first, InputIt last, OutputIt destination) -> OutputIt |
| Copies the elements in the range, defined by [first, last) , to another range beginning at destination.
|
|
template<typename BidirIt1 , typename BidirIt2 > |
constexpr auto | copy_backward (BidirIt1 first, BidirIt1 last, BidirIt2 dLast) -> BidirIt2 |
| Copies the elements from the range, defined by [first, last) , to another range ending at dLast . The elements are copied in reverse order (the last element is copied first), but their relative order is preserved.
|
|
template<typename InIt , typename OutIt , typename Pred > |
constexpr auto | copy_if (InIt first, InIt last, OutIt dFirst, Pred pred) -> OutIt |
| Copies the elements in the range, defined by [first, last) , to another range beginning at destination.
|
|
template<typename InputIt , typename Size , typename OutputIt > |
constexpr auto | copy_n (InputIt first, Size count, OutputIt result) -> OutputIt |
| Copies exactly count values from the range beginning at first to the range beginning at result. Formally, for each integer 0 <= i < count , performs *(result + i) = *(first + i) . Overlap of ranges is formally permitted, but leads to unpredictable ordering of the results.
|
|
template<typename T > |
constexpr auto | cos (complex< T > const &z) -> complex< T > |
|
template<typename T > |
constexpr auto | cosh (complex< T > const &z) -> complex< T > |
|
template<typename InputIt , typename T > |
constexpr auto | count (InputIt first, InputIt last, T const &value) -> typename iterator_traits< InputIt >::difference_type |
| Returns the number of elements in the range [first, last) satisfying specific criteria. Counts the elements that are equal to value.
|
|
template<typename InputIt , typename Predicate > |
constexpr auto | count_if (InputIt first, InputIt last, Predicate p) -> typename iterator_traits< InputIt >::difference_type |
| Returns the number of elements in the range [first, last) satisfying specific criteria. Counts elements for which predicate p returns true.
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | countl_one (UInt x) noexcept -> int |
| Returns the number of consecutive 1 ("one") bits in the value of x, starting from the most significant bit ("left").
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | countl_zero (UInt x) noexcept -> int |
| Returns the number of consecutive 0 bits in the value of x, starting from the most significant bit ("left").
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | countr_one (UInt x) noexcept -> int |
| Returns the number of consecutive 1 bits in the value of x, starting from the least significant bit ("right").
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | countr_zero (UInt x) noexcept -> int |
| Returns the number of consecutive 0 bits in the value of x, starting from the least significant bit ("right").
|
|
template<typename Container > |
constexpr auto | crbegin (Container const &c) -> decltype(rbegin(c)) |
|
template<typename T > |
constexpr auto | cref (reference_wrapper< T > t) noexcept -> reference_wrapper< T const > |
|
template<typename T > |
void | cref (T const &&)=delete |
|
template<typename T > |
constexpr auto | cref (T const &t) noexcept -> reference_wrapper< T const > |
| Function templates ref and cref are helper functions that generate an object of type reference_wrapper, using template argument deduction to determine the template argument of the result. module Utility.
|
|
template<typename Container > |
constexpr auto | crend (Container const &c) -> decltype(rend(c)) |
| Returns an iterator to the reverse-end of the given container.
|
|
template<typename C > |
constexpr auto | data (C &c) noexcept(noexcept(c.data())) -> decltype(c.data()) |
| Returns a pointer to the block of memory containing the elements of the container.
|
|
template<typename C > |
constexpr auto | data (C const &c) noexcept(noexcept(c.data())) -> decltype(c.data()) |
|
template<typename T , size_t N> |
constexpr auto | data (T(&array)[N]) noexcept -> T * |
|
template<typename T > |
constexpr auto | decay_copy (T &&t) noexcept(is_nothrow_convertible_v< T, decay_t< T > >) -> decay_t< T > |
|
template<typename T > |
auto | declval () noexcept -> add_rvalue_reference_t< T > |
|
template<typename ForwardIt > |
constexpr auto | destroy (ForwardIt first, ForwardIt last) -> void |
| Destroys the objects in the range [first, last).
|
|
template<typename T > |
constexpr auto | destroy_at (T *p) -> void |
| If T is not an array type, calls the destructor of the object pointed to by p, as if by p->~T(). If T is an array type, recursively destroys elements of *p in order, as if by calling destroy(begin(*p), end(*p)).
|
|
template<typename ForwardIt , typename Size > |
constexpr auto | destroy_n (ForwardIt first, Size n) -> ForwardIt |
| Destroys the n objects in the range starting at first.
|
|
template<typename It > |
constexpr auto | distance (It first, It last) -> typename iterator_traits< It >::difference_type |
| Returns the number of hops from first to last.
|
|
constexpr auto | div (int x, int y) noexcept -> div_t |
| Computes both the quotient and the remainder of the division of the numerator x by the denominator y . The quotient is the result of the expression x/y . The remainder is the result of the expression xy .
|
|
constexpr auto | div (long long x, long long y) noexcept -> lldiv_t |
| Computes both the quotient and the remainder of the division of the numerator x by the denominator y . The quotient is the result of the expression x/y . The remainder is the result of the expression xy .
|
|
constexpr auto | div (long x, long y) noexcept -> ldiv_t |
| Computes both the quotient and the remainder of the division of the numerator x by the denominator y . The quotient is the result of the expression x/y . The remainder is the result of the expression xy .
|
|
template<builtin_integer Int> |
constexpr auto | div_sat (Int x, Int y) noexcept -> Int |
| Computes the saturating division x / y.
|
|
template<typename C > |
constexpr auto | empty (C const &c) noexcept(noexcept(c.empty())) -> decltype(c.empty()) |
| Returns whether the given container is empty.
|
|
template<typename T , size_t N> |
constexpr auto | empty (T(&array)[N]) noexcept -> bool |
| Returns whether the given container is empty.
|
|
template<typename C > |
constexpr auto | end (C &c) -> decltype(c.end()) |
| Returns an iterator to the end (i.e. the element after the last element) of the given container c or array array. These templates rely on.
|
|
template<typename C > |
constexpr auto | end (C const &c) -> decltype(c.end()) |
|
template<typename T , etl::size_t N> |
constexpr auto | end (T(&array)[N]) noexcept -> T * |
|
template<typename InputIt1 , typename InputIt2 > |
constexpr auto | equal (InputIt1 first1, InputIt1 last1, InputIt2 first2) -> bool |
|
template<typename InputIt1 , typename InputIt2 > |
constexpr auto | equal (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2) -> bool |
|
template<typename InputIt1 , typename InputIt2 , typename Predicate > |
constexpr auto | equal (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, Predicate p) -> bool |
|
template<typename InputIt1 , typename InputIt2 , typename Predicate > |
constexpr auto | equal (InputIt1 first1, InputIt1 last1, InputIt2 first2, Predicate p) -> bool |
| Returns true if the range [first1, last1) is equal to the range [first2, first2 + (last1 - first1)) , and false otherwise.
|
|
template<typename ForwardIt , typename T > |
constexpr auto | equal_range (ForwardIt first, ForwardIt last, T const &value) -> pair< ForwardIt, ForwardIt > |
|
template<typename ForwardIt , typename T , typename Compare > |
constexpr auto | equal_range (ForwardIt first, ForwardIt last, T const &value, Compare comp) -> pair< ForwardIt, ForwardIt > |
| Returns a range containing all elements equivalent to value in the range [first, last) .
|
|
template<typename Char , typename Traits , etl::size_t Capacity, typename U > |
constexpr auto | erase (basic_inplace_string< Char, Capacity, Traits > &c, U const &value) noexcept -> typename basic_inplace_string< Char, Capacity, Traits >::size_type |
| Erases all elements that compare equal to value from the container.
|
|
template<typename T , size_t Capacity, typename U > |
constexpr auto | erase (static_vector< T, Capacity > &c, U const &value) -> typename static_vector< T, Capacity >::size_type |
|
template<typename Char , typename Traits , etl::size_t Capacity, typename Predicate > |
constexpr auto | erase_if (basic_inplace_string< Char, Capacity, Traits > &c, Predicate pred) noexcept -> typename basic_inplace_string< Char, Capacity, Traits >::size_type |
| Erases all elements that satisfy the predicate pred from the container.
|
|
template<typename Key , typename Container , typename Compare , typename Pred > |
constexpr auto | erase_if (etl::flat_set< Key, Container, Compare > &c, Pred pred) -> typename etl::flat_set< Key, Container, Compare >::size_type |
|
template<typename T , size_t Capacity, typename Predicate > |
constexpr auto | erase_if (static_vector< T, Capacity > &c, Predicate pred) -> typename static_vector< T, Capacity >::size_type |
| Erases all elements that satisfy the predicate pred from the container.
|
|
template<typename T , typename U = T> |
constexpr auto | exchange (T &obj, U &&newValue) noexcept(etl::is_nothrow_move_constructible_v< T > and etl::is_nothrow_assignable_v< T &, U >) -> T |
| Replaces the value of obj with new_value and returns the old value of obj.
|
|
template<typename RandomIt > |
constexpr auto | exchange_sort (RandomIt first, RandomIt last) -> void |
| Sorts the elements in the range [first, last) in non-descending order.
|
|
template<typename RandomIt , typename Compare > |
constexpr auto | exchange_sort (RandomIt first, RandomIt last, Compare comp) -> void |
| Sorts the elements in the range [first, last) in non-descending order.
|
|
template<typename... Integrals>
requires (etl::is_convertible_v<Integrals, etl::size_t> and ...) |
| extents (Integrals...) -> extents< etl::size_t, etl::size_t((Integrals(), etl::dynamic_extent))... > |
|
constexpr auto | fabs (double n) noexcept -> double |
|
constexpr auto | fabs (float n) noexcept -> float |
|
constexpr auto | fabs (long double n) noexcept -> long double |
|
constexpr auto | fabsf (float n) noexcept -> float |
|
constexpr auto | fabsl (long double n) noexcept -> long double |
|
template<typename ForwardIt , typename T > |
constexpr auto | fill (ForwardIt first, ForwardIt last, T const &value) -> void |
| Assigns the given value to the elements in the range [first, last) .
|
|
template<typename OutputIt , typename Size , typename T > |
constexpr auto | fill_n (OutputIt first, Size count, T const &value) -> OutputIt |
| Assigns the given value to the first count elements in the range beginning at first if count > 0 . Does nothing otherwise.
|
|
template<typename InputIt , typename T > |
constexpr auto | find (InputIt first, InputIt last, T const &value) noexcept -> InputIt |
| Searches for an element equal to value.
|
|
template<typename ForwardIt1 , typename ForwardIt2 > |
constexpr auto | find_end (ForwardIt1 first, ForwardIt1 last, ForwardIt2 sFirst, ForwardIt2 sLast) -> ForwardIt1 |
|
template<typename ForwardIt1 , typename ForwardIt2 , typename Predicate > |
constexpr auto | find_end (ForwardIt1 first, ForwardIt1 last, ForwardIt2 sFirst, ForwardIt2 sLast, Predicate p) -> ForwardIt1 |
| Searches for the last occurrence of the sequence [sFirst, sLast) in the range [first, last) . Elements are compared using the given binary predicate p.
|
|
template<typename InputIt , typename ForwardIt > |
constexpr auto | find_first_of (InputIt first, InputIt last, ForwardIt sFirst, ForwardIt sLast) -> InputIt |
| Searches the range [first, last) for any of the elements in the range [sFirst, sLast).
|
|
template<typename InputIt , typename ForwardIt , typename Predicate > |
constexpr auto | find_first_of (InputIt first, InputIt last, ForwardIt sFirst, ForwardIt sLast, Predicate pred) -> InputIt |
| Searches the range [first, last) for any of the elements in the range [sFirst, sLast). Elements are compared using the given binary predicate pred.
|
|
template<typename InputIt , typename Predicate > |
constexpr auto | find_if (InputIt first, InputIt last, Predicate pred) noexcept -> InputIt |
| Searches for an element for which predicate p returns true.
|
|
template<typename InputIt , typename Predicate > |
constexpr auto | find_if_not (InputIt first, InputIt last, Predicate pred) noexcept -> InputIt |
| Searches for an element for which predicate q returns false.
|
|
template<etl::size_t Pos, etl::builtin_unsigned_integer UInt> |
constexpr auto | flip_bit (UInt word) noexcept -> UInt |
| Flip bit at position Pos.
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | flip_bit (UInt word, UInt pos) noexcept -> UInt |
| Flip bit at position pos .
|
|
template<typename InputIt , typename UnaryFunc > |
constexpr auto | for_each (InputIt first, InputIt last, UnaryFunc f) noexcept -> UnaryFunc |
| Applies the given function object f to the result of dereferencing every iterator in the range [first, last) in order.
|
|
template<typename InputIt , typename Size , typename UnaryFunc > |
constexpr auto | for_each_n (InputIt first, Size n, UnaryFunc f) noexcept -> InputIt |
| Applies the given function object f to the result of dereferencing every iterator in the range [first, first + n] in order.
|
|
template<typename OutputIt , typename... Args> |
auto | format_to (OutputIt out, etl::string_view fmt, Args const &... args) -> OutputIt |
| Format args according to the format string fmt, and write the result to the output iterator out.
|
|
template<typename OutputIter , typename... Args> |
auto | format_to_n (OutputIter out, diff_t< OutputIter > n, etl::string_view fmt, Args const &... args) -> format_to_n_result< OutputIter > |
| Format args according to the format string fmt, and write the result to the output iterator out. At most n characters are written.
|
|
template<typename T > |
constexpr auto | forward (remove_reference_t< T > &¶m) noexcept -> T && |
|
template<typename T > |
constexpr auto | forward (remove_reference_t< T > ¶m) noexcept -> T && |
| Forwards lvalues as either lvalues or as rvalues, depending on T. When t is a forwarding reference (a function argument that is declared as an rvalue reference to a cv-unqualified function template parameter), this overload forwards the argument to another function with the value category it had when passed to the calling function.
|
|
template<typename... Args> |
constexpr auto | forward_as_tuple (Args &&... args) noexcept -> etl::tuple< Args &&... > |
| Constructs a tuple of references to the arguments in args suitable for forwarding as an argument to a function. The tuple has rvalue reference data members when rvalues are used as arguments, and otherwise has lvalue reference data members.
|
|
template<typename T , typename U > |
constexpr auto | forward_like (U &&x) noexcept -> auto && |
|
template<integral Int>
requires (not same_as<Int, bool>) |
constexpr auto | from_chars (char const *first, char const *last, Int &value, int base=10) -> from_chars_result |
| Analyzes the character sequence [first,last) for a pattern described below. If no characters match the pattern or if the value obtained by parsing the matched characters is not representable in the type of value, value is unmodified, otherwise the characters matching the pattern are interpreted as a text representation of an arithmetic value, which is stored in value.
|
|
template<typename Container > |
constexpr auto | front_inserter (Container &c) -> front_insert_iterator< Container > |
| front_inserter is a convenience function template that constructs a front_insert_iterator for the container c with the type deduced from the type of the argument.
|
|
template<typename C > |
constexpr auto | full (C const &c) noexcept(noexcept(c.full())) -> decltype(c.full()) |
| Returns whether the given container is full.
|
|
template<typename T , size_t N> |
constexpr auto | full (T(&array)[N]) noexcept -> bool |
|
template<typename R , typename... Args> |
| function_ref (R(*)(Args...)) -> function_ref< R(Args...)> |
|
template<typename M , typename N > |
constexpr auto | gcd (M m, N n) noexcept -> etl::common_type_t< M, N > |
| Computes the greatest common divisor of the integers m and n.
|
|
template<typename ForwardIt , typename Generator > |
constexpr auto | generate (ForwardIt first, ForwardIt last, Generator g) -> void |
| Assigns each element in range [first, last) a value generated by the given function object g.
|
|
template<typename Real , size_t Bits, typename RNG > |
constexpr auto | generate_canonical (RNG &g) noexcept(noexcept(g())) -> Real |
| Generates a random floating point number in range [0,1).
|
|
template<typename OutputIt , typename SizeT , typename Generator > |
constexpr auto | generate_n (OutputIt first, SizeT count, Generator g) -> OutputIt |
| Assigns values, generated by given function object g , to the first count elements in the range beginning at first , if count > 0 . Does nothing otherwise.
|
|
template<size_t I, typename X > |
constexpr auto | get (complex< X > &&z) noexcept -> X && |
|
template<size_t I, typename X > |
constexpr auto | get (complex< X > &z) noexcept -> X & |
|
template<size_t I, typename X > |
constexpr auto | get (complex< X > const &&z) noexcept -> X const && |
|
template<size_t I, typename X > |
constexpr auto | get (complex< X > const &z) noexcept -> X const & |
|
template<size_t I, typename T1 , typename T2 > |
constexpr auto | get (pair< T1, T2 > &&p) noexcept -> tuple_element_t< I, pair< T1, T2 > > && |
| Extracts an element from the pair using tuple-like interface.
|
|
template<size_t I, typename T1 , typename T2 > |
constexpr auto | get (pair< T1, T2 > &p) noexcept -> tuple_element_t< I, pair< T1, T2 > > & |
| Extracts an element from the pair using tuple-like interface.
|
|
template<size_t I, typename T1 , typename T2 > |
constexpr auto | get (pair< T1, T2 > const &&p) noexcept -> tuple_element_t< I, pair< T1, T2 > > const && |
| Extracts an element from the pair using tuple-like interface.
|
|
template<size_t I, typename T1 , typename T2 > |
constexpr auto | get (pair< T1, T2 > const &p) noexcept -> tuple_element_t< I, pair< T1, T2 > > const & |
| Extracts an element from the pair using tuple-like interface.
|
|
template<etl::size_t I, typename... Ts> |
constexpr auto | get (tuple< Ts... > &&t) -> auto && |
|
template<etl::size_t I, typename... Ts> |
constexpr auto | get (tuple< Ts... > &t) -> auto & |
|
template<etl::size_t I, typename... Ts> |
constexpr auto | get (tuple< Ts... > const &&t) -> auto const && |
|
template<etl::size_t I, typename... Ts> |
constexpr auto | get (tuple< Ts... > const &t) -> auto const & |
|
template<typename T , typename... Types> |
constexpr auto | get_if (variant< Types... > *pv) noexcept -> add_pointer_t< T > |
|
template<typename T , typename... Types> |
constexpr auto | get_if (variant< Types... > const *pv) noexcept -> add_pointer_t< T const > |
|
template<typename BidirIt > |
constexpr auto | gnome_sort (BidirIt first, BidirIt last) -> void |
| Sorts the elements in the range [first, last) in non-descending order.
|
|
template<typename BidirIt , typename Compare > |
constexpr auto | gnome_sort (BidirIt first, BidirIt last, Compare comp) -> void |
| Sorts the elements in the range [first, last) in non-descending order.
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | has_single_bit (UInt x) noexcept -> bool |
| Checks if x is an integral power of two.
|
|
template<integral Int> |
constexpr auto | idiv (Int x, Int y) noexcept -> idiv_result< Int > |
|
template<typename... Types> |
constexpr auto | ignore_unused (Types &&...) -> void |
| Explicitly ignore arguments or variables.
|
|
template<integral Int> |
constexpr auto | ilog2 (Int x) noexcept -> Int |
|
template<typename T > |
constexpr auto | imag (complex< T > const &z) noexcept(noexcept(z.imag())) -> T |
|
template<floating_point Float> |
constexpr auto | imag (Float) noexcept -> Float |
|
template<integral Integer> |
constexpr auto | imag (Integer) noexcept -> double |
|
constexpr auto | imaxdiv (intmax_t x, intmax_t y) noexcept -> imaxdiv_t |
| Computes both the quotient and the remainder of the division of the numerator x by the denominator y . The quotient is the result of the expression x/y . The remainder is the result of the expression xy .
|
|
template<builtin_integer R, builtin_integer T> |
constexpr auto | in_range (T t) noexcept -> bool |
| Returns true if the value of t is in the range of values that can be represented in R, that is, if t can be converted to R without data loss.
|
|
template<typename InputIt1 , typename InputIt2 > |
constexpr auto | includes (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2) -> bool |
|
template<typename InputIt1 , typename InputIt2 , typename Compare > |
constexpr auto | includes (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, Compare comp) -> bool |
| Returns true if the sorted range [first2, last2) is a subsequence of the sorted range [first1, last1) . Both ranges must be sorted.
|
|
template<typename InputIt1 , typename InputIt2 , typename T > |
constexpr auto | inner_product (InputIt1 first1, InputIt1 last1, InputIt2 first2, T init) -> T |
| Computes inner product (i.e. sum of products) or performs ordered map/reduce operation on the range [first1, last1) and the range beginning at first2.
|
|
template<typename InputIt1 , typename InputIt2 , typename T , typename BinaryOperation1 , typename BinaryOperation2 > |
constexpr auto | inner_product (InputIt1 first1, InputIt1 last1, InputIt2 first2, T init, BinaryOperation1 op1, BinaryOperation2 op2) -> T |
|
template<typename BidirIt , typename Compare > |
constexpr auto | inplace_merge (BidirIt begin, BidirIt mid, BidirIt end, Compare comp) -> void |
| Merges two consecutive sorted ranges [first, middle) and [middle, last) into one sorted range [first, last).
|
|
template<typename BidirIt > |
constexpr auto | inplace_merge (BidirIt first, BidirIt mid, BidirIt last) -> void |
|
template<typename RandomIt > |
constexpr auto | insertion_sort (RandomIt first, RandomIt last) -> void |
|
template<typename RandomIt , typename Compare > |
constexpr auto | insertion_sort (RandomIt first, RandomIt last, Compare comp) -> void |
| Sorts the elements in the range [first, last) in non-descending order. The order of equal elements is guaranteed to be preserved.
|
|
template<typename F , typename... Args> |
constexpr auto | invoke (F &&f, Args &&... args) -> invoke_result_t< F, Args... > |
|
template<typename R , typename F , typename... Args>
requires (etl::is_invocable_r_v<R, F, Args...>) |
constexpr auto | invoke_r (F &&f, Args &&... args) -> R |
|
template<typename ForwardIt , typename T > |
constexpr auto | iota (ForwardIt first, ForwardIt last, T value) -> void |
| Fills the range [first, last) with sequentially increasing values, starting with value and repetitively evaluating ++value.
|
|
template<auto Base> |
constexpr auto | ipow (decltype(Base) exponent) noexcept -> decltype(Base) |
|
template<integral Int> |
constexpr auto | ipow (Int base, Int exponent) noexcept -> Int |
|
constexpr auto | is_constant_evaluated () noexcept -> bool |
| Detects whether the function call occurs within a constant-evaluated context. Returns true if the evaluation of the call occurs within the evaluation of an expression or conversion that is manifestly constant-evaluated; otherwise returns false.
|
|
auto | is_debugger_present () noexcept -> bool |
| Attempts to determine if the program is being executed with debugger present.
|
|
constexpr auto | is_eq (partial_ordering cmp) noexcept -> bool |
|
consteval auto | is_freestanding () noexcept -> bool |
|
constexpr auto | is_gt (partial_ordering cmp) noexcept -> bool |
|
constexpr auto | is_gteq (partial_ordering cmp) noexcept -> bool |
|
consteval auto | is_hosted () noexcept -> bool |
|
constexpr auto | is_lt (partial_ordering cmp) noexcept -> bool |
|
constexpr auto | is_lteq (partial_ordering cmp) noexcept -> bool |
|
constexpr auto | is_neq (partial_ordering cmp) noexcept -> bool |
|
template<typename InputIt , typename Predicate > |
constexpr auto | is_partitioned (InputIt first, InputIt last, Predicate p) -> bool |
| Returns true if all elements in the range [first, last) that satisfy the predicate p appear before all elements that don't. Also returns true if the range is empty.
|
|
template<typename ForwardIt1 , typename ForwardIt2 > |
constexpr auto | is_permutation (ForwardIt1 first, ForwardIt1 last, ForwardIt2 first2) -> bool |
| Returns true if there exists a permutation of the elements in the range [first1, last1) that makes that range equal to the range [first2, last2) , where last2 denotes first2 + (last1 - first1) if it was not given.
|
|
template<typename ForwardIt1 , typename ForwardIt2 > |
constexpr auto | is_permutation (ForwardIt1 first1, ForwardIt1 last1, ForwardIt2 first2, ForwardIt2 last2) -> bool |
|
template<typename ForwardIt > |
constexpr auto | is_sorted (ForwardIt first, ForwardIt last) -> bool |
| Checks if the elements in range [first, last) are sorted in non-descending order.
|
|
template<typename ForwardIt , typename Compare > |
constexpr auto | is_sorted (ForwardIt first, ForwardIt last, Compare comp) -> bool |
|
template<typename ForwardIt > |
constexpr auto | is_sorted_until (ForwardIt first, ForwardIt last) -> ForwardIt |
| Examines the range [first, last) and finds the largest range beginning at first in which the elements are sorted in non-descending order.
|
|
template<typename ForwardIt , typename Compare > |
constexpr auto | is_sorted_until (ForwardIt first, ForwardIt last, Compare comp) -> ForwardIt |
|
constexpr auto | isalnum (int ch) noexcept -> int |
| Checks if the given character is an alphanumeric character as classified by the default C locale.
|
|
constexpr auto | isalpha (int ch) noexcept -> int |
| Checks if the given character is an alphabetic character as classified by the default C locale.
|
|
constexpr auto | isblank (int ch) noexcept -> int |
| Checks if the given character is a blank character as classified by the currently installed C locale. Blank characters are whitespace characters used to separate words within a sentence. In the default C locale, only space (0x20) and horizontal tab (0x09) are classified as blank characters.
|
|
constexpr auto | iscntrl (int ch) noexcept -> int |
| Checks if the given character is a control character as classified by the currently installed C locale. In the default, "C" locale, the control characters are the characters with the codes 0x00-0x1F and 0x7F.
|
|
constexpr auto | isdigit (int ch) noexcept -> int |
| Checks if the given character is one of the 10 decimal digits: 0123456789.
|
|
constexpr auto | isfinite (double arg) -> bool |
|
constexpr auto | isfinite (float arg) -> bool |
| Determines if the given floating point number arg has finite value i.e. it is normal, subnormal or zero, but not infinite or NaN.
|
|
constexpr auto | isfinite (half arg) noexcept -> bool |
|
constexpr auto | isfinite (long double arg) -> bool |
|
constexpr auto | isgraph (int ch) noexcept -> int |
| Checks if the given character is graphic (has a graphical representation) as classified by the default C locale.
|
|
constexpr auto | isinf (double arg) -> bool |
|
constexpr auto | isinf (float arg) -> bool |
| Determines if the given floating point number arg is a positive or negative infinity.
|
|
constexpr auto | isinf (half arg) noexcept -> bool |
|
template<etl::integral Int> |
constexpr auto | isinf (Int arg) -> bool |
|
constexpr auto | isinf (long double arg) -> bool |
|
constexpr auto | islower (int ch) noexcept -> int |
| Checks if the given character is classified as a lowercase character according to the default C locale.
|
|
constexpr auto | isnan (double arg) -> bool |
|
constexpr auto | isnan (float arg) -> bool |
| Determines if the given floating point number arg is a not-a-number (NaN) value.
|
|
constexpr auto | isnan (half arg) noexcept -> bool |
|
template<integral Int> |
constexpr auto | isnan (Int arg) -> bool |
| Determines if the given floating point number arg is a not-a-number (NaN) value.
|
|
constexpr auto | isnan (long double arg) -> bool |
|
constexpr auto | isnormal (half arg) noexcept -> bool |
|
constexpr auto | isprint (int ch) noexcept -> int |
| Checks if ch is a printable character as classified by the default C locale.
|
|
constexpr auto | ispunct (int ch) noexcept -> int |
| Checks if the given character is a punctuation character as classified by the current C locale.
|
|
constexpr auto | isspace (int ch) noexcept -> int |
| Checks if the given character is whitespace character as classified by the default C locale.
|
|
constexpr auto | isupper (int ch) noexcept -> int |
| Checks if the given character is classified as a uppercase character according to the default C locale.
|
|
constexpr auto | iswalnum (wint_t ch) noexcept -> int |
| Checks if the given wide character is an alphanumeric character, i.e. either a number (0123456789), an uppercase letter (ABCDEFGHIJKLMNOPQRSTUVWXYZ), a lowercase letter (abcdefghijklmnopqrstuvwxyz) or any alphanumeric character specific to the current locale.
|
|
constexpr auto | iswalpha (wint_t ch) noexcept -> int |
| Checks if the given wide character is an alphabetic character, i.e. either an uppercase letter (ABCDEFGHIJKLMNOPQRSTUVWXYZ), a lowercase letter (abcdefghijklmnopqrstuvwxyz) or any alphabetic character specific to the current locale.
|
|
constexpr auto | iswblank (wint_t ch) noexcept -> int |
| Checks if the given wide character is classified as blank character (that is, a whitespace character used to separate words in a sentence) by the current C locale. In the default C locale, only space (0x20) and horizontal tab (0x09) are blank characters.
|
|
constexpr auto | iswcntrl (wint_t ch) noexcept -> int |
| Checks if the given wide character is a control character, i.e. codes 0x00-0x1F and 0x7F and any control characters specific to the current locale.
|
|
constexpr auto | iswdigit (wint_t ch) noexcept -> int |
| Checks if the given wide character corresponds (if narrowed) to one of the ten decimal digit characters 0123456789.
|
|
constexpr auto | iswgraph (wint_t ch) noexcept -> int |
| Checks if the given wide character has a graphical representation, i.e. it is either a number (0123456789), an uppercase letter (ABCDEFGHIJKLMNOPQRSTUVWXYZ), a lowercase letter (abcdefghijklmnopqrstuvwxyz), a punctuation character(!"#$%&'()*+,-./:;<=>?@[]^_`{|}~) or any graphical character specific to the current C locale.
|
|
constexpr auto | iswlower (wint_t ch) noexcept -> int |
| Checks if the given wide character is a lowercase letter, i.e. one of abcdefghijklmnopqrstuvwxyz or any lowercase letter specific to the current locale.
|
|
constexpr auto | iswprint (wint_t ch) noexcept -> int |
| Checks if the given wide character can be printed, i.e. it is either a number (0123456789), an uppercase letter (ABCDEFGHIJKLMNOPQRSTUVWXYZ), a lowercase letter (abcdefghijklmnopqrstuvwxyz), a punctuation character(!"#$%&'()*+,-./:;<=>?@[]^_`{|}~), space or any printable character specific to the current C locale.
|
|
constexpr auto | iswpunct (wint_t ch) noexcept -> int |
| Checks if the given wide character is a punctuation character, i.e. it is one of !"#$%&'()*+,-./:;<=>?@[]^_`{|}~ or any punctuation character specific to the current locale.
|
|
constexpr auto | iswspace (wint_t ch) noexcept -> int |
| Checks if the given wide character is a wide whitespace character as classified by the currently installed C locale.
|
|
constexpr auto | iswupper (wint_t ch) noexcept -> int |
| Checks if the given wide character is an uppercase letter, i.e. one of ABCDEFGHIJKLMNOPQRSTUVWXYZ or any uppercase letter specific to the current locale.
|
|
constexpr auto | iswxdigit (wint_t ch) noexcept -> int |
| Checks if the given wide character corresponds (if narrowed) to a hexadecimal numeric character, i.e. one of 0123456789abcdefABCDEF.
|
|
constexpr auto | isxdigit (int ch) noexcept -> int |
| Checks if the given character is a hexadecimal numeric character (0123456789abcdefABCDEF).
|
|
template<typename ForwardIt1 , typename ForwardIt2 > |
constexpr auto | iter_swap (ForwardIt1 a, ForwardIt2 b) -> void |
| Swaps the values of the elements the given iterators are pointing to.
|
|
constexpr auto | labs (long n) noexcept -> long |
| Computes the absolute value of an integer number. The behavior is undefined if the result cannot be represented by the return type. If abs is called with an unsigned integral argument that cannot be converted to int by integral promotion, the program is ill-formed.
|
|
template<typename M , typename N >
requires (is_integral_v<M> and not is_same_v<M, bool> and is_integral_v<N> and not is_same_v<N, bool>) |
constexpr auto | lcm (M m, N n) -> common_type_t< M, N > |
| Computes the least common multiple of the integers m and n.
|
|
constexpr auto | ldiv (long x, long y) noexcept -> ldiv_t |
| Computes both the quotient and the remainder of the division of the numerator x by the denominator y . The quotient is the result of the expression x/y . The remainder is the result of the expression xy .
|
|
template<floating_point Float> |
constexpr auto | lerp (Float a, Float b, Float t) noexcept -> Float |
| Computes a+t(b−a), i.e. the linear interpolation between a and b for the parameter t (or extrapolation, when t is outside the range [0,1]).
|
|
template<typename InputIt1 , typename InputIt2 > |
constexpr auto | lexicographical_compare (InputIt1 f1, InputIt1 l1, InputIt2 f2, InputIt2 l2) -> bool |
|
template<typename InputIt1 , typename InputIt2 , typename Compare > |
constexpr auto | lexicographical_compare (InputIt1 f1, InputIt1 l1, InputIt2 f2, InputIt2 l2, Compare comp) -> bool |
| Checks if the first range [f1, l1) is lexicographically less than the second range [f2, l2) .
|
|
constexpr auto | lgamma (double arg) noexcept -> double |
| Computes the natural logarithm of the absolute value of the gamma function of arg.
|
|
constexpr auto | lgamma (float arg) noexcept -> float |
| Computes the natural logarithm of the absolute value of the gamma function of arg.
|
|
constexpr auto | lgamma (long double arg) noexcept -> long double |
| Computes the natural logarithm of the absolute value of the gamma function of arg.
|
|
template<integral T> |
constexpr auto | lgamma (T arg) noexcept -> double |
| Computes the natural logarithm of the absolute value of the gamma function of arg.
|
|
constexpr auto | lgammaf (float arg) noexcept -> float |
| Computes the natural logarithm of the absolute value of the gamma function of arg.
|
|
constexpr auto | lgammal (long double arg) noexcept -> long double |
| Computes the natural logarithm of the absolute value of the gamma function of arg.
|
|
constexpr auto | llabs (long long n) noexcept -> long long |
| Computes the absolute value of an integer number. The behavior is undefined if the result cannot be represented by the return type. If abs is called with an unsigned integral argument that cannot be converted to int by integral promotion, the program is ill-formed.
|
|
constexpr auto | lldiv (long long x, long long y) noexcept -> lldiv_t |
| Computes both the quotient and the remainder of the division of the numerator x by the denominator y . The quotient is the result of the expression x/y . The remainder is the result of the expression xy .
|
|
constexpr auto | llrint (double arg) noexcept -> long long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
constexpr auto | llrint (float arg) noexcept -> long long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
constexpr auto | llrint (long double arg) noexcept -> long long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
template<integral T> |
constexpr auto | llrint (T arg) noexcept -> long long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
constexpr auto | llrintf (float arg) noexcept -> long long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
constexpr auto | llrintl (long double arg) noexcept -> long long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
template<typename T > |
constexpr auto | log (complex< T > const &z) noexcept -> complex< T > |
|
template<typename T > |
constexpr auto | log10 (complex< T > const &z) noexcept -> complex< T > |
|
template<typename ForwardIt , typename T > |
constexpr auto | lower_bound (ForwardIt first, ForwardIt last, T const &value) noexcept -> ForwardIt |
|
template<typename ForwardIt , typename T , typename Compare > |
constexpr auto | lower_bound (ForwardIt first, ForwardIt last, T const &value, Compare comp) noexcept -> ForwardIt |
| Returns an iterator pointing to the first element in the range [first, last) that is not less than (i.e. greater or equal to) value, or last if no such element is found.
|
|
constexpr auto | lrint (double arg) noexcept -> long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
constexpr auto | lrint (float arg) noexcept -> long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
constexpr auto | lrint (long double arg) noexcept -> long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
template<integral T> |
constexpr auto | lrint (T arg) noexcept -> long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
constexpr auto | lrintf (float arg) noexcept -> long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
constexpr auto | lrintl (long double arg) noexcept -> long |
| Rounds the floating-point argument arg to an integer value, using the current rounding mode.
|
|
template<typename Context = etl::format_context, typename... Args> |
auto | make_format_args (Args &&... args) -> detail::format_arg_store< Context, Args... > |
|
template<typename T , typename Tuple > |
constexpr auto | make_from_tuple (Tuple &&t) -> T |
|
template<typename T1 , typename T2 > |
constexpr auto | make_pair (T1 &&t, T2 &&u) -> pair< decay_t< T1 >, decay_t< T2 > > |
| Creates a etl::pair object, deducing the target type from the types of arguments.
|
|
template<typename Iter > |
constexpr auto | make_reverse_iterator (Iter i) noexcept -> etl::reverse_iterator< Iter > |
| Convenience function template that constructs a etl::reverse_iterator for the given iterator i (which must be a LegacyBidirectionalIterator) with the type deduced from the type of the argument.
|
|
template<typename... Args> |
constexpr auto | make_tuple (Args &&... args) |
| Creates a tuple object, deducing the target type from the types of arguments.
|
|
template<typename... Args> |
auto | make_wformat_args (Args &&... args) -> detail::format_arg_store< wformat_context, Args... > |
|
template<typename Type > |
constexpr auto | max (Type const &a, Type const &b) noexcept -> Type const & |
| Returns the greater of a and b.
|
|
template<typename Type , typename Compare > |
constexpr auto | max (Type const &a, Type const &b, Compare comp) noexcept -> Type const & |
| Returns the greater of a and b, using a compare function.
|
|
template<typename ForwardIt > |
constexpr auto | max_element (ForwardIt first, ForwardIt last) noexcept -> ForwardIt |
| Finds the greatest element in the range [first, last) . Elements are compared using operator<.
|
|
template<typename ForwardIt , typename Compare > |
constexpr auto | max_element (ForwardIt first, ForwardIt last, Compare comp) -> ForwardIt |
| Finds the greatest element in the range [first, last) . Elements are compared using the given binary comparison function comp.
|
|
template<typename CArray >
requires (is_array_v<CArray> && rank_v<CArray> == 1) |
| mdspan (CArray &) -> mdspan< remove_all_extents_t< CArray >, extents< size_t, extent_v< CArray, 0 > > > |
|
template<typename ElementType , typename IndexType , size_t... ExtentsPack> |
| mdspan (ElementType *, extents< IndexType, ExtentsPack... > const &) -> mdspan< ElementType, extents< IndexType, ExtentsPack... > > |
|
template<typename ElementType , typename... Integrals>
requires ((is_convertible_v<Integrals, size_t> && ...) && sizeof...(Integrals) > 0) |
| mdspan (ElementType *, Integrals...) -> mdspan< ElementType, dextents< size_t, sizeof...(Integrals)> > |
|
template<typename ElementType , typename MappingType > |
| mdspan (ElementType *, MappingType const &) -> mdspan< ElementType, typename MappingType::extents_type, typename MappingType::layout_type > |
|
template<class ElementType , class Extents , class Layout , class Container > |
| mdspan (mdarray< ElementType, Extents, Layout, Container >) -> mdspan< typename decltype(declval< mdarray< ElementType, Extents, Layout, Container > >().to_mdspan())::element_type, typename decltype(declval< mdarray< ElementType, Extents, Layout, Container > >().to_mdspan())::extens_type, typename decltype(declval< mdarray< ElementType, Extents, Layout, Container > >().to_mdspan())::layout_type, typename decltype(declval< mdarray< ElementType, Extents, Layout, Container > >().to_mdspan())::accessor_type > |
|
template<typename Pointer >
requires (is_pointer_v<remove_reference_t<Pointer>>) |
| mdspan (Pointer &&) -> mdspan< remove_pointer_t< remove_reference_t< Pointer > >, extents< size_t > > |
|
template<typename MappingType , typename AccessorType > |
| mdspan (typename AccessorType::data_handle_type const &, MappingType const &, AccessorType const &) -> mdspan< typename AccessorType::element_type, typename MappingType::extents_type, typename MappingType::layout_type, AccessorType > |
|
auto | memcmp (void const *lhs, void const *rhs, etl::size_t count) noexcept -> int |
| Reinterprets the objects pointed to by lhs and rhs as arrays of unsigned char and compares the first count bytes of these arrays. The comparison is done lexicographically.
|
|
auto | memcpy (void *dest, void const *src, etl::size_t n) -> void * |
| Copy the first n bytes pointed to by src to the buffer pointed to by dest. Source and destination may not overlap. If source and destination might overlap, memmove() must be used instead.
|
|
auto | memmove (void *dest, void const *src, etl::size_t count) -> void * |
| Copy the first n bytes pointed to by src to the buffer pointed to by dest. Source and destination may overlap.
|
|
auto | memset (void *s, int c, etl::size_t n) -> void * |
| Copies the value of c (converted to an unsigned char) into each of the first n characters of the object pointed to by s.
|
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt > |
constexpr auto | merge (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt destination) -> OutputIt |
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt , typename Compare > |
constexpr auto | merge (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt destination, Compare comp) -> OutputIt |
| Merges two sorted ranges [first1, last1) and [first2, last2) into one sorted range beginning at destination .
|
|
template<etl::floating_point Float> |
constexpr auto | midpoint (Float a, Float b) noexcept -> Float |
|
template<typename Int >
requires (etl::is_integral_v<Int> and not etl::is_same_v<Int, bool>) |
constexpr auto | midpoint (Int a, Int b) noexcept -> Int |
| Returns half the sum of a + b. If the sum is odd, the result is rounded towards a.
|
|
template<typename Ptr >
requires etl::is_pointer_v<Ptr> |
constexpr auto | midpoint (Ptr a, Ptr b) noexcept -> Ptr |
|
template<typename Type > |
constexpr auto | min (Type const &a, Type const &b) noexcept -> Type const & |
| Returns the smaller of a and b.
|
|
template<typename Type , typename Compare > |
constexpr auto | min (Type const &a, Type const &b, Compare comp) noexcept -> Type const & |
| Returns the smaller of a and b, using a compare function.
|
|
template<typename ForwardIt > |
constexpr auto | min_element (ForwardIt first, ForwardIt last) noexcept -> ForwardIt |
| Finds the smallest element in the range [first, last) . Elements are compared using operator<.
|
|
template<typename ForwardIt , typename Compare > |
constexpr auto | min_element (ForwardIt first, ForwardIt last, Compare comp) -> ForwardIt |
| Finds the smallest element in the range [first, last) . Elements are compared using the given binary comparison function comp.
|
|
template<typename T > |
constexpr auto | minmax (T const &a, T const &b) -> pair< T const &, T const & > |
| Returns the lowest and the greatest of the given values.
|
|
template<typename T , typename Compare > |
constexpr auto | minmax (T const &a, T const &b, Compare comp) -> pair< T const &, T const & > |
| Returns the lowest and the greatest of the given values.
|
|
template<typename ForwardIt > |
constexpr auto | minmax_element (ForwardIt first, ForwardIt last) -> pair< ForwardIt, ForwardIt > |
| Finds the smallest and greatest element in the range [first, last) .
|
|
template<typename ForwardIt , typename Compare > |
constexpr auto | minmax_element (ForwardIt first, ForwardIt last, Compare comp) -> pair< ForwardIt, ForwardIt > |
| Finds the smallest and greatest element in the range [first, last) .
|
|
template<typename InputIt1 , typename InputIt2 > |
constexpr auto | mismatch (InputIt1 first1, InputIt1 last1, InputIt2 first2) -> pair< InputIt1, InputIt2 > |
|
template<typename InputIt1 , typename InputIt2 > |
constexpr auto | mismatch (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2) -> pair< InputIt1, InputIt2 > |
|
template<typename InputIt1 , typename InputIt2 , typename Predicate > |
constexpr auto | mismatch (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, Predicate pred) -> pair< InputIt1, InputIt2 > |
|
template<typename InputIt1 , typename InputIt2 , typename Predicate > |
constexpr auto | mismatch (InputIt1 first1, InputIt1 last1, InputIt2 first2, Predicate pred) -> pair< InputIt1, InputIt2 > |
| Returns the first mismatching pair of elements from two ranges: one defined by [first1, last1) and another defined by [first2,last2). If last2 is not provided (overloads (1-4)), it denotes first2 + (last1 - first1). Elements are compared using the given binary predicate pred.
|
|
template<typename InputIt , typename OutputIt > |
constexpr auto | move (InputIt first, InputIt last, OutputIt destination) -> OutputIt |
| Moves the elements in the range [first, last) , to another range beginning at destination, starting from first and proceeding to last - 1 . After this operation the elements in the moved-from range will still contain valid values of the appropriate type, but not necessarily the same values as before the move.
|
|
template<typename T > |
constexpr auto | move (T &&t) noexcept -> etl::remove_reference_t< T > && |
| move is used to indicate that an object t may be "moved from", i.e. allowing the efficient transfer of resources from t to another object. In particular, move produces an xvalue expression that identifies its argument t. It is exactly equivalent to a static_cast to an rvalue reference type.
|
|
template<typename BidirIt1 , typename BidirIt2 > |
constexpr auto | move_backward (BidirIt1 first, BidirIt1 last, BidirIt2 destination) -> BidirIt2 |
| Moves the elements from the range [first, last) , to another range ending at destination. The elements are moved in reverse order (the last element is moved first), but their relative order is preserved.
|
|
template<typename T > |
constexpr auto | move_if_noexcept (T &x) noexcept -> etl::conditional_t<!etl::is_nothrow_move_constructible_v< T > and etl::is_copy_constructible_v< T >, T const &, T && > |
| Conditionally convert a value to an rvalue.
|
|
template<typename InputIt > |
constexpr auto | next (InputIt it, typename iterator_traits< InputIt >::difference_type n=1) -> InputIt |
| Return the nth successor of iterator it.
|
|
template<typename InputIt , typename Predicate > |
constexpr auto | none_of (InputIt first, InputIt last, Predicate p) -> bool |
| Checks if unary predicate p returns true for no elements in the range [first, last) .
|
|
template<typename T > |
constexpr auto | norm (complex< T > const &z) noexcept -> T |
|
template<floating_point Float> |
constexpr auto | norm (Float f) noexcept -> complex< Float > |
|
template<integral Integer> |
constexpr auto | norm (Integer i) noexcept -> complex< double > |
|
template<auto ConstFn> |
constexpr auto | not_fn () noexcept -> detail::stateless_not_fn< ConstFn > |
|
template<typename F > |
constexpr auto | not_fn (F &&f) -> detail::not_fn_t< etl::decay_t< F > > |
|
template<typename RandomIt > |
constexpr auto | nth_element (RandomIt first, RandomIt nth, RandomIt last) -> void |
|
template<typename RandomIt , typename Compare > |
constexpr auto | nth_element (RandomIt first, RandomIt nth, RandomIt last, Compare comp) -> void |
| nth_element is a partial sorting algorithm that rearranges elements in [first, last) such that:
|
|
template<typename Char , typename Traits , etl::size_t Capacity> |
constexpr auto | operator!= (Char const *lhs, etl::basic_inplace_string< Char, Capacity, Traits > const &rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1> |
constexpr auto | operator!= (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, Char const *rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1, etl::size_t Capacity2> |
constexpr auto | operator!= (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, etl::basic_inplace_string< Char, Capacity2, Traits > const &rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Iter1 , typename Iter2 > |
constexpr auto | operator!= (etl::reverse_iterator< Iter1 > const &lhs, etl::reverse_iterator< Iter2 > const &rhs) -> bool |
| Compares the underlying iterators. Inverse comparisons are applied in order to take into account that the iterator order is reversed.
|
|
template<typename R , typename... Args, size_t Capacity, size_t Alignment> |
constexpr auto | operator!= (inplace_function< R(Args...), Capacity, Alignment > const &f, nullptr_t) noexcept -> bool |
| Compares a etl::inplace_function with a null pointer. Empty functions (that is, functions without a callable target) compare equal, non-empty functions compare non-equal.
|
|
template<typename Rhs , Rhs R, typename Lhs , Lhs L> |
constexpr auto | operator!= (integral_constant< Rhs, R >, integral_constant< Lhs, L >) -> integral_constant< bool, L !=R > |
|
constexpr auto | operator!= (language_standard lhs, language_standard rhs) noexcept -> bool |
|
template<typename R , typename... Args, size_t Capacity, size_t Alignment> |
constexpr auto | operator!= (nullptr_t, inplace_function< R(Args...), Capacity, Alignment > const &f) noexcept -> bool |
| Compares a etl::inplace_function with a null pointer. Empty functions (that is, functions without a callable target) compare equal, non-empty functions compare non-equal.
|
|
template<typename Key , size_t Capacity, typename Comp > |
constexpr auto | operator!= (static_set< Key, Capacity, Comp > const &lhs, static_set< Key, Capacity, Comp > const &rhs) -> bool |
| Compares the contents of two sets.
|
|
template<typename T , size_t Capacity> |
constexpr auto | operator!= (static_vector< T, Capacity > const &lhs, static_vector< T, Capacity > const &rhs) noexcept -> bool |
|
constexpr auto | operator""_h (long double h) -> etl::chrono::duration< long double, ratio< 3600, 1 > > |
| Forms a etl::chrono::duration literal representing hours. Floating-point literal, returns a floating-point duration equivalent to etl::chrono::hours.
|
|
constexpr auto | operator""_h (unsigned long long h) -> etl::chrono::hours |
| Forms a etl::chrono::duration literal representing hours. Integer literal, returns exactly etl::chrono::hours(hrs).
|
|
constexpr auto | operator""_i (long double d) -> complex< double > |
|
constexpr auto | operator""_i (unsigned long long d) -> complex< double > |
|
constexpr auto | operator""_if (long double d) -> complex< float > |
|
constexpr auto | operator""_if (unsigned long long d) -> complex< float > |
|
constexpr auto | operator""_il (long double d) -> complex< long double > |
|
constexpr auto | operator""_il (unsigned long long d) -> complex< long double > |
|
constexpr auto | operator""_min (long double m) -> etl::chrono::duration< long double, etl::ratio< 60, 1 > > |
| Forms a etl::chrono::duration literal representing minutes. Floating-point literal, returns a floating-point duration equivalent to etl::chrono::minutes.
|
|
constexpr auto | operator""_min (unsigned long long m) -> etl::chrono::minutes |
| Forms a etl::chrono::duration literal representing minutes. Integer literal, returns exactly etl::chrono::minutes(mins).
|
|
constexpr auto | operator""_ms (long double m) -> etl::chrono::duration< long double, etl::milli > |
| Forms a etl::chrono::duration literal representing milliseconds. Floating-point literal, returns a floating-point duration equivalent to etl::chrono::milliseconds.
|
|
constexpr auto | operator""_ms (unsigned long long m) -> etl::chrono::milliseconds |
| Forms a etl::chrono::duration literal representing milliseconds. Integer literal, returns exactly etl::chrono::milliseconds(mins).
|
|
constexpr auto | operator""_ns (long double m) -> etl::chrono::duration< long double, etl::nano > |
| Forms a etl::chrono::duration literal representing nanoseconds. Floating-point literal, returns a floating-point duration equivalent to etl::chrono::nanoseconds.
|
|
constexpr auto | operator""_ns (unsigned long long m) -> etl::chrono::nanoseconds |
| Forms a etl::chrono::duration literal representing nanoseconds. Integer literal, returns exactly etl::chrono::nanoseconds(mins).
|
|
constexpr auto | operator""_s (long double m) -> etl::chrono::duration< long double > |
| Forms a etl::chrono::duration literal representing seconds. Floating-point literal, returns a floating-point duration equivalent to etl::chrono::seconds.
|
|
constexpr auto | operator""_s (unsigned long long m) -> etl::chrono::seconds |
| Forms a etl::chrono::duration literal representing seconds. Integer literal, returns exactly etl::chrono::seconds(mins).
|
|
constexpr auto | operator""_us (long double m) -> etl::chrono::duration< long double, etl::micro > |
| Forms a etl::chrono::duration literal representing microseconds. Floating-point literal, returns a floating-point duration equivalent to etl::chrono::microseconds.
|
|
constexpr auto | operator""_us (unsigned long long m) -> etl::chrono::microseconds |
| Forms a etl::chrono::duration literal representing microseconds. Integer literal, returns exactly etl::chrono::microseconds(mins).
|
|
TETL_ALWAYS_INLINE constexpr auto | operator& (etl::byte lhs, etl::byte rhs) noexcept -> etl::byte |
| Equivalent to: return byte(static_cast<unsigned int>(lhs) & static_cast<unsigned int>(rhs));
|
|
template<bitmask_type T> |
constexpr auto | operator& (T x, T y) -> T |
|
TETL_ALWAYS_INLINE constexpr auto | operator&= (etl::byte &lhs, etl::byte rhs) noexcept -> etl::byte & |
| Equivalent to: return lhs = lhs & rhs;
|
|
template<bitmask_type T> |
constexpr auto | operator&= (T &x, T y) noexcept -> T const & |
|
template<typename T > |
constexpr auto | operator* (complex< T > const &lhs, complex< T > const &rhs) -> complex< T > |
|
template<typename T > |
constexpr auto | operator* (complex< T > const &lhs, T const &rhs) -> complex< T > |
|
template<typename T > |
constexpr auto | operator* (T const &lhs, complex< T > const &rhs) -> complex< T > |
|
template<typename Char , typename Traits , size_t Capacity> |
constexpr auto | operator+ (basic_inplace_string< Char, Capacity, Traits > const &lhs, Char const *rhs) noexcept -> basic_inplace_string< Char, Capacity, Traits > |
| Returns a string containing characters from lhs followed by the characters from rhs.
|
|
template<typename Char , typename Traits , size_t Capacity> |
constexpr auto | operator+ (basic_inplace_string< Char, Capacity, Traits > const &lhs, Char rhs) noexcept -> basic_inplace_string< Char, Capacity, Traits > |
| Returns a string containing characters from lhs followed by the characters from rhs.
|
|
template<typename Char , typename Traits , size_t Capacity1, size_t Capacity2> |
constexpr auto | operator+ (basic_inplace_string< Char, Capacity1, Traits > const &lhs, basic_inplace_string< Char, Capacity2, Traits > const &rhs) noexcept -> basic_inplace_string< Char, Capacity1, Traits > |
| Returns a string containing characters from lhs followed by the characters from rhs.
|
|
template<typename Char , typename Traits , size_t Capacity> |
constexpr auto | operator+ (Char const *lhs, basic_inplace_string< Char, Capacity, Traits > const &rhs) noexcept -> basic_inplace_string< Char, Capacity, Traits > |
| Returns a string containing characters from lhs followed by the characters from rhs.
|
|
template<typename Char , typename Traits , size_t Capacity> |
constexpr auto | operator+ (Char lhs, basic_inplace_string< Char, Capacity, Traits > const &rhs) noexcept -> basic_inplace_string< Char, Capacity, Traits > |
| Returns a string containing characters from lhs followed by the characters from rhs.
|
|
template<typename T > |
constexpr auto | operator+ (complex< T > const &lhs, complex< T > const &rhs) -> complex< T > |
|
template<typename T > |
constexpr auto | operator+ (complex< T > const &lhs, T const &rhs) -> complex< T > |
|
template<typename T > |
constexpr auto | operator+ (complex< T > const &val) -> complex< T > |
|
template<typename Rhs , Rhs R, typename Lhs , Lhs L> |
constexpr auto | operator+ (integral_constant< Rhs, R >, integral_constant< Lhs, L >) -> integral_constant< decltype(L+R), L+R > |
|
template<typename T > |
constexpr auto | operator+ (T const &lhs, complex< T > const &rhs) -> complex< T > |
|
template<typename Iter > |
constexpr auto | operator+ (typename reverse_iterator< Iter >::difference_type n, reverse_iterator< Iter > const &it) noexcept(noexcept(it.base() - n)) -> reverse_iterator< Iter > |
| Returns the iterator it incremented by n.
|
|
template<typename T > |
constexpr auto | operator- (complex< T > const &lhs, complex< T > const &rhs) -> complex< T > |
|
template<typename T > |
constexpr auto | operator- (complex< T > const &lhs, T const &rhs) -> complex< T > |
|
template<typename T > |
constexpr auto | operator- (complex< T > const &val) -> complex< T > |
|
template<typename Iterator1 , typename Iterator2 > |
constexpr auto | operator- (reverse_iterator< Iterator1 > const &lhs, reverse_iterator< Iterator2 > const &rhs) noexcept(noexcept(rhs.base() - lhs.base())) -> decltype(rhs.base() - lhs.base()) |
| Returns the distance between two iterator adaptors.
|
|
template<typename T > |
constexpr auto | operator- (T const &lhs, complex< T > const &rhs) -> complex< T > |
|
template<typename T > |
constexpr auto | operator/ (complex< T > const &lhs, complex< T > const &rhs) -> complex< T > |
|
template<typename T > |
constexpr auto | operator/ (complex< T > const &lhs, T const &rhs) -> complex< T > |
|
template<typename T > |
constexpr auto | operator/ (T const &lhs, complex< T > const &rhs) -> complex< T > |
|
template<typename Char , typename Traits > |
constexpr auto | operator< (basic_string_view< Char, Traits > lhs, basic_string_view< Char, Traits > rhs) noexcept -> bool |
| Compares two views. All comparisons are done via the compare() member function (which itself is defined in terms of Traits::compare()):
|
|
template<typename Char , typename Traits , int = 2> |
constexpr auto | operator< (basic_string_view< Char, Traits > lhs, type_identity_t< basic_string_view< Char, Traits > > rhs) noexcept -> bool |
|
template<typename Char , typename Traits , etl::size_t Capacity1> |
constexpr auto | operator< (Char const *lhs, etl::basic_inplace_string< Char, Capacity1, Traits > const &rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1> |
constexpr auto | operator< (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, Char const *rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1, etl::size_t Capacity2> |
constexpr auto | operator< (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, etl::basic_inplace_string< Char, Capacity2, Traits > const &rhs) noexcept |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Iter1 , typename Iter2 > |
constexpr auto | operator< (etl::reverse_iterator< Iter1 > const &lhs, etl::reverse_iterator< Iter2 > const &rhs) -> bool |
| Compares the underlying iterators. Inverse comparisons are applied in order to take into account that the iterator order is reversed.
|
|
constexpr auto | operator< (language_standard lhs, language_standard rhs) noexcept -> bool |
|
template<typename T1 , typename T2 > |
constexpr auto | operator< (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Compares lhs and rhs lexicographically by operator<, that is, compares the first elements and only if they are equivalent, compares the second elements.
|
|
template<typename Key , size_t Capacity, typename Comp > |
constexpr auto | operator< (static_set< Key, Capacity, Comp > const &lhs, static_set< Key, Capacity, Comp > const &rhs) -> bool |
| Compares the contents of two sets.
|
|
template<typename T , size_t Capacity> |
constexpr auto | operator< (static_vector< T, Capacity > const &lhs, static_vector< T, Capacity > const &rhs) noexcept -> bool |
| Compares the contents of two vectors.
|
|
template<typename Char , typename Traits , int = 1> |
constexpr auto | operator< (type_identity_t< basic_string_view< Char, Traits > > lhs, basic_string_view< Char, Traits > rhs) noexcept -> bool |
|
template<etl::integral Int> |
TETL_ALWAYS_INLINE constexpr auto | operator<< (etl::byte b, Int shift) noexcept -> etl::byte |
| Equivalent to: return etl::byte(static_cast<unsigned int>(b) << shift);
|
|
template<etl::integral Int> |
TETL_ALWAYS_INLINE constexpr auto | operator<<= (etl::byte &b, Int shift) noexcept -> etl::byte & |
| Equivalent to: return b = b << shift;
|
|
template<typename Char , typename Traits > |
constexpr auto | operator<= (basic_string_view< Char, Traits > lhs, basic_string_view< Char, Traits > rhs) noexcept -> bool |
| Compares two views. All comparisons are done via the compare() member function (which itself is defined in terms of Traits::compare()):
|
|
template<typename Char , typename Traits , int = 2> |
constexpr auto | operator<= (basic_string_view< Char, Traits > lhs, type_identity_t< basic_string_view< Char, Traits > > rhs) noexcept -> bool |
|
template<typename Char , typename Traits , etl::size_t Capacity1> |
constexpr auto | operator<= (Char const *lhs, etl::basic_inplace_string< Char, Capacity1, Traits > const &rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1> |
constexpr auto | operator<= (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, Char const *rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1, etl::size_t Capacity2> |
constexpr auto | operator<= (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, etl::basic_inplace_string< Char, Capacity2, Traits > const &rhs) noexcept |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Iter1 , typename Iter2 > |
constexpr auto | operator<= (etl::reverse_iterator< Iter1 > const &lhs, etl::reverse_iterator< Iter2 > const &rhs) -> bool |
| Compares the underlying iterators. Inverse comparisons are applied in order to take into account that the iterator order is reversed.
|
|
constexpr auto | operator<= (language_standard lhs, language_standard rhs) noexcept -> bool |
|
template<typename T1 , typename T2 > |
constexpr auto | operator<= (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Compares lhs and rhs lexicographically by operator<, that is, compares the first elements and only if they are equivalent, compares the second elements.
|
|
template<typename Key , size_t Capacity, typename Comp > |
constexpr auto | operator<= (static_set< Key, Capacity, Comp > const &lhs, static_set< Key, Capacity, Comp > const &rhs) -> bool |
| Compares the contents of two sets.
|
|
template<typename T , size_t Capacity> |
constexpr auto | operator<= (static_vector< T, Capacity > const &lhs, static_vector< T, Capacity > const &rhs) noexcept -> bool |
|
template<typename Char , typename Traits , int = 1> |
constexpr auto | operator<= (type_identity_t< basic_string_view< Char, Traits > > lhs, basic_string_view< Char, Traits > rhs) noexcept -> bool |
|
template<typename Char , typename Traits > |
constexpr auto | operator== (basic_string_view< Char, Traits > lhs, type_identity_t< basic_string_view< Char, Traits > > rhs) noexcept -> bool |
| Compares two views. All comparisons are done via the compare() member function (which itself is defined in terms of Traits::compare()):
|
|
template<typename Char , typename Traits , etl::size_t Capacity> |
constexpr auto | operator== (Char const *lhs, etl::basic_inplace_string< Char, Capacity, Traits > const &rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity> |
constexpr auto | operator== (etl::basic_inplace_string< Char, Capacity, Traits > const &lhs, Char const *rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1, etl::size_t Capacity2> |
constexpr auto | operator== (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, etl::basic_inplace_string< Char, Capacity2, Traits > const &rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Iter1 , typename Iter2 > |
constexpr auto | operator== (etl::reverse_iterator< Iter1 > const &lhs, etl::reverse_iterator< Iter2 > const &rhs) -> bool |
| Compares the underlying iterators. Inverse comparisons are applied in order to take into account that the iterator order is reversed.
|
|
template<typename R , typename... Args, size_t Capacity, size_t Alignment> |
constexpr auto | operator== (inplace_function< R(Args...), Capacity, Alignment > const &f, nullptr_t) noexcept -> bool |
| Compares a etl::inplace_function with a null pointer. Empty functions (that is, functions without a callable target) compare equal, non-empty functions compare non-equal.
|
|
template<typename Rhs , Rhs R, typename Lhs , Lhs L> |
constexpr auto | operator== (integral_constant< Rhs, R >, integral_constant< Lhs, L >) -> integral_constant< bool, L==R > |
|
constexpr auto | operator== (language_standard lhs, language_standard rhs) noexcept -> bool |
| Compares language_standards.
|
|
template<typename R , typename... Args, size_t Capacity, size_t Alignment> |
constexpr auto | operator== (nullptr_t, inplace_function< R(Args...), Capacity, Alignment > const &f) noexcept -> bool |
| Compares a etl::inplace_function with a null pointer. Empty functions (that is, functions without a callable target) compare equal, non-empty functions compare non-equal.
|
|
template<typename T1 , typename T2 > |
constexpr auto | operator== (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Tests if both elements of lhs and rhs are equal, that is, compares lhs.first with rhs.first and lhs.second with rhs.second.
|
|
template<typename Key , size_t Capacity, typename Comp > |
constexpr auto | operator== (static_set< Key, Capacity, Comp > const &lhs, static_set< Key, Capacity, Comp > const &rhs) -> bool |
| Compares the contents of two sets.
|
|
template<typename T , size_t Capacity> |
constexpr auto | operator== (static_vector< T, Capacity > const &lhs, static_vector< T, Capacity > const &rhs) noexcept -> bool |
| Compares the contents of two vectors.
|
|
template<typename CharT , CharT... Chars> |
constexpr auto | operator== (string_constant< CharT, Chars... >, string_constant< CharT, Chars... >) noexcept -> bool |
|
template<typename CharT , CharT... CharsL, CharT... CharsR> |
constexpr auto | operator== (string_constant< CharT, CharsL... >, string_constant< CharT, CharsR... >) noexcept -> bool |
|
template<typename... Ts, typename... Us>
requires (sizeof...(Ts) == sizeof...(Us)) |
constexpr auto | operator== (tuple< Ts... > const &lhs, tuple< Us... > const &rhs) -> bool |
|
template<typename Char , typename Traits > |
constexpr auto | operator> (basic_string_view< Char, Traits > lhs, basic_string_view< Char, Traits > rhs) noexcept -> bool |
| Compares two views. All comparisons are done via the compare() member function (which itself is defined in terms of Traits::compare()):
|
|
template<typename Char , typename Traits , int = 2> |
constexpr auto | operator> (basic_string_view< Char, Traits > lhs, type_identity_t< basic_string_view< Char, Traits > > rhs) noexcept -> bool |
|
template<typename Char , typename Traits , etl::size_t Capacity1> |
constexpr auto | operator> (Char const *lhs, etl::basic_inplace_string< Char, Capacity1, Traits > const &rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1> |
constexpr auto | operator> (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, Char const *rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1, etl::size_t Capacity2> |
constexpr auto | operator> (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, etl::basic_inplace_string< Char, Capacity2, Traits > const &rhs) noexcept |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Iter1 , typename Iter2 > |
constexpr auto | operator> (etl::reverse_iterator< Iter1 > const &lhs, etl::reverse_iterator< Iter2 > const &rhs) -> bool |
| Compares the underlying iterators. Inverse comparisons are applied in order to take into account that the iterator order is reversed.
|
|
constexpr auto | operator> (language_standard lhs, language_standard rhs) noexcept -> bool |
|
template<typename T1 , typename T2 > |
constexpr auto | operator> (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Compares lhs and rhs lexicographically by operator<, that is, compares the first elements and only if they are equivalent, compares the second elements.
|
|
template<typename Key , size_t Capacity, typename Comp > |
constexpr auto | operator> (static_set< Key, Capacity, Comp > const &lhs, static_set< Key, Capacity, Comp > const &rhs) -> bool |
| Compares the contents of two sets.
|
|
template<typename T , size_t Capacity> |
constexpr auto | operator> (static_vector< T, Capacity > const &lhs, static_vector< T, Capacity > const &rhs) noexcept -> bool |
|
template<typename Char , typename Traits , int = 1> |
constexpr auto | operator> (type_identity_t< basic_string_view< Char, Traits > > lhs, basic_string_view< Char, Traits > rhs) noexcept -> bool |
|
template<typename Char , typename Traits > |
constexpr auto | operator>= (basic_string_view< Char, Traits > lhs, basic_string_view< Char, Traits > rhs) noexcept -> bool |
| Compares two views. All comparisons are done via the compare() member function (which itself is defined in terms of Traits::compare()):
|
|
template<typename Char , typename Traits , int = 2> |
constexpr auto | operator>= (basic_string_view< Char, Traits > lhs, type_identity_t< basic_string_view< Char, Traits > > rhs) noexcept -> bool |
|
template<typename Char , typename Traits , etl::size_t Capacity> |
constexpr auto | operator>= (Char const *lhs, etl::basic_inplace_string< Char, Capacity, Traits > const &rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity> |
constexpr auto | operator>= (etl::basic_inplace_string< Char, Capacity, Traits > const &lhs, Char const *rhs) noexcept -> bool |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Char , typename Traits , etl::size_t Capacity1, etl::size_t Capacity2> |
constexpr auto | operator>= (etl::basic_inplace_string< Char, Capacity1, Traits > const &lhs, etl::basic_inplace_string< Char, Capacity2, Traits > const &rhs) noexcept |
| Compares the contents of a string with another string or a null-terminated array of Char.
|
|
template<typename Iter1 , typename Iter2 > |
constexpr auto | operator>= (etl::reverse_iterator< Iter1 > const &lhs, etl::reverse_iterator< Iter2 > const &rhs) -> bool |
| Compares the underlying iterators. Inverse comparisons are applied in order to take into account that the iterator order is reversed.
|
|
constexpr auto | operator>= (language_standard lhs, language_standard rhs) noexcept -> bool |
|
template<typename T1 , typename T2 > |
constexpr auto | operator>= (pair< T1, T2 > const &lhs, pair< T1, T2 > const &rhs) -> bool |
| Compares lhs and rhs lexicographically by operator<, that is, compares the first elements and only if they are equivalent, compares the second elements.
|
|
template<typename Key , size_t Capacity, typename Comp > |
constexpr auto | operator>= (static_set< Key, Capacity, Comp > const &lhs, static_set< Key, Capacity, Comp > const &rhs) -> bool |
| Compares the contents of two sets.
|
|
template<typename T , size_t Capacity> |
constexpr auto | operator>= (static_vector< T, Capacity > const &lhs, static_vector< T, Capacity > const &rhs) noexcept -> bool |
|
template<typename Char , typename Traits , int = 1> |
constexpr auto | operator>= (type_identity_t< basic_string_view< Char, Traits > > lhs, basic_string_view< Char, Traits > rhs) noexcept -> bool |
|
template<etl::integral Int> |
TETL_ALWAYS_INLINE constexpr auto | operator>> (etl::byte b, Int shift) noexcept -> etl::byte |
| Equivalent to: return etl::byte(static_cast<unsigned int>(b) >> shift);
|
|
template<etl::integral Int> |
TETL_ALWAYS_INLINE constexpr auto | operator>>= (etl::byte &b, Int shift) noexcept -> etl::byte & |
| Equivalent to: return b = b >> shift;
|
|
TETL_ALWAYS_INLINE constexpr auto | operator^ (etl::byte lhs, etl::byte rhs) noexcept -> etl::byte |
| Equivalent to: return byte(static_cast<unsigned int>(lhs) ^ static_cast<unsigned int>(rhs));
|
|
template<bitmask_type T> |
constexpr auto | operator^ (T x, T y) -> T |
|
TETL_ALWAYS_INLINE constexpr auto | operator^= (etl::byte &lhs, etl::byte rhs) noexcept -> etl::byte & |
| Equivalent to: return lhs = lhs ^ rhs;
|
|
template<bitmask_type T> |
constexpr auto | operator^= (T &x, T y) noexcept -> T const & |
|
TETL_ALWAYS_INLINE constexpr auto | operator| (etl::byte lhs, etl::byte rhs) noexcept -> etl::byte |
| Equivalent to: return byte(static_cast<unsigned int>(lhs) | static_cast<unsigned int>(rhs));
|
|
template<bitmask_type T> |
constexpr auto | operator| (T x, T y) -> T |
|
TETL_ALWAYS_INLINE constexpr auto | operator|= (etl::byte &lhs, etl::byte rhs) noexcept -> etl::byte & |
| Equivalent to: return lhs = lhs | rhs;
|
|
template<bitmask_type T> |
constexpr auto | operator|= (T &x, T y) noexcept -> T const & |
|
TETL_ALWAYS_INLINE constexpr auto | operator~ (etl::byte b) noexcept -> etl::byte |
| Equivalent to: return byte(~static_cast<unsigned int>(b));
|
|
template<bitmask_type T> |
constexpr auto | operator~ (T x) -> T |
|
template<typename... Functor> |
| overload (Functor...) -> overload< Functor... > |
|
template<typename T1 , typename T2 > |
| pair (T1, T2) -> pair< T1, T2 > |
|
template<typename RandomIt > |
constexpr auto | partial_sort (RandomIt first, RandomIt middle, RandomIt last) -> void |
|
template<typename RandomIt , typename Compare > |
constexpr auto | partial_sort (RandomIt first, RandomIt middle, RandomIt last, Compare comp) -> void |
| Rearranges elements such that the range [first, middle) contains the sorted middle - first smallest elements in the range [first, last) . The order of equal elements is not guaranteed to be preserved. The order of the remaining elements in the range [middle, last) is unspecified.
|
|
template<typename InputIt , typename OutputIt > |
constexpr auto | partial_sum (InputIt first, InputIt last, OutputIt destination) -> OutputIt |
|
template<typename InputIt , typename OutputIt , typename BinaryOperation > |
constexpr auto | partial_sum (InputIt first, InputIt last, OutputIt destination, BinaryOperation op) -> OutputIt |
| Computes the partial sums of the elements in the subranges of the range [first, last) and writes them to the range beginning at destination. This version uses the given binary function op, both applying etl::move to their operands on the left hand side.
|
|
template<typename ForwardIt , typename Predicate > |
constexpr auto | partition (ForwardIt first, ForwardIt last, Predicate p) -> ForwardIt |
| Reorders the elements in the range [first, last) in such a way that all elements for which the predicate p returns true precede the elements for which predicate p returns false. Relative order of the elements is not preserved.
|
|
template<typename InputIt , typename OutputIt1 , typename OutputIt2 , typename Predicate > |
constexpr auto | partition_copy (InputIt first, InputIt last, OutputIt1 destinationTrue, OutputIt2 destinationFalse, Predicate p) -> pair< OutputIt1, OutputIt2 > |
| Copies the elements from the range [first, last) to two different ranges depending on the value returned by the predicate p. The elements that satisfy the predicate p are copied to the range beginning at destination_true. The rest of the elements are copied to the range beginning at destination_false.
|
|
template<typename ForwardIt , typename Predicate > |
constexpr auto | partition_point (ForwardIt first, ForwardIt last, Predicate p) -> ForwardIt |
| Examines the partitioned (as if by partition) range [first, last) and locates the end of the first partition, that is, the first element that does not satisfy p or last if all elements satisfy p.
|
|
template<typename T > |
constexpr auto | polar (T const &r, T const &theta=T()) noexcept -> etl::complex< T > |
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | popcount (UInt val) noexcept -> int |
| Returns the number of 1 bits in the value of x.
|
|
constexpr auto | pow (double base, double exp) -> double |
| Computes the value of base raised to the power exp.
|
|
constexpr auto | pow (double base, int iexp) -> double |
| Computes the value of base raised to the power exp.
|
|
constexpr auto | pow (float base, float exp) -> float |
| Computes the value of base raised to the power exp.
|
|
constexpr auto | pow (float base, int iexp) -> float |
| Computes the value of base raised to the power exp.
|
|
constexpr auto | pow (long double base, int iexp) -> long double |
| Computes the value of base raised to the power exp.
|
|
constexpr auto | pow (long double base, long double exp) -> long double |
| Computes the value of base raised to the power exp.
|
|
constexpr auto | powf (float base, float exp) -> float |
| Computes the value of base raised to the power exp.
|
|
constexpr auto | powl (long double base, long double exp) -> long double |
| Computes the value of base raised to the power exp.
|
|
template<typename BidirIt > |
constexpr auto | prev (BidirIt it, typename iterator_traits< BidirIt >::difference_type n=1) -> BidirIt |
| Return the nth predecessor of iterator it.
|
|
template<typename Exception > |
TETL_NO_INLINE TETL_COLD auto | raise (char const *msg, etl::source_location const loc=etl::source_location::current()) -> void |
|
template<typename Container > |
constexpr auto | rbegin (Container &c) -> decltype(c.rbegin()) |
| Returns an iterator to the reverse-beginning of the given container.
|
|
template<typename Container > |
constexpr auto | rbegin (Container const &c) -> decltype(c.rbegin()) |
|
template<typename T , size_t N> |
constexpr auto | rbegin (T(&array)[N]) -> reverse_iterator< T * > |
|
template<typename T > |
constexpr auto | real (complex< T > const &z) noexcept(noexcept(z.real())) -> T |
|
template<floating_point Float> |
constexpr auto | real (Float f) noexcept -> Float |
|
template<integral Integer> |
constexpr auto | real (Integer i) noexcept -> double |
|
template<typename InputIter > |
constexpr auto | reduce (InputIter first, InputIter last) -> typename etl::iterator_traits< InputIter >::value_type |
| Similar to etl::accumulate.
|
|
template<typename InputIter , typename T > |
constexpr auto | reduce (InputIter first, InputIter last, T init) -> T |
| Similar to etl::accumulate.
|
|
template<typename InputIter , typename T , typename BinaryOp > |
constexpr auto | reduce (InputIter first, InputIter last, T init, BinaryOp op) -> T |
| Similar to etl::accumulate.
|
|
template<typename T > |
constexpr auto | ref (reference_wrapper< T > t) noexcept -> reference_wrapper< T > |
| Function templates ref and cref are helper functions that generate an object of type reference_wrapper, using template argument deduction to determine the template argument of the result.
|
|
template<typename T > |
constexpr auto | ref (T &t) noexcept -> reference_wrapper< T > |
| Function templates ref and cref are helper functions that generate an object of type reference_wrapper, using template argument deduction to determine the template argument of the result.
|
|
template<typename T > |
| reference_wrapper (T &) -> reference_wrapper< T > |
|
constexpr auto | remainder (double x, double y) noexcept -> double |
| Computes the remainder of the floating point division operation x/y.
|
|
constexpr auto | remainder (float x, float y) noexcept -> float |
| Computes the remainder of the floating point division operation x/y.
|
|
constexpr auto | remainder (long double x, long double y) noexcept -> long double |
| Computes the remainder of the floating point division operation x/y.
|
|
constexpr auto | remainderf (float x, float y) noexcept -> float |
| Computes the remainder of the floating point division operation x/y.
|
|
constexpr auto | remainderl (long double x, long double y) noexcept -> long double |
| Computes the remainder of the floating point division operation x/y.
|
|
template<typename ForwardIt , typename T > |
constexpr auto | remove (ForwardIt first, ForwardIt last, T const &value) -> ForwardIt |
| Removes all elements satisfying specific criteria from the range [first, last) and returns a past-the-end iterator for the new end of the range.
|
|
template<typename InputIt , typename OutputIt , typename T > |
constexpr auto | remove_copy (InputIt first, InputIt last, OutputIt destination, T const &value) -> OutputIt |
| Copies elements from the range [first, last), to another range beginning at destination, omitting the elements which satisfy specific criteria. Source and destination ranges cannot overlap. Ignores all elements that are equal to value.
|
|
template<typename InputIt , typename OutputIt , typename Predicate > |
constexpr auto | remove_copy_if (InputIt first, InputIt last, OutputIt destination, Predicate p) -> OutputIt |
| Copies elements from the range [first, last), to another range beginning at destination, omitting the elements which satisfy specific criteria. Source and destination ranges cannot overlap. Ignores all elements for which predicate p returns true.
|
|
template<typename ForwardIt , typename Predicate > |
constexpr auto | remove_if (ForwardIt first, ForwardIt last, Predicate pred) -> ForwardIt |
| Removes all elements satisfying specific criteria from the range [first, last) and returns a past-the-end iterator for the new end of the range.
|
|
template<typename Container > |
constexpr auto | rend (Container &c) -> decltype(c.rend()) |
| Returns an iterator to the reverse-end of the given container.
|
|
template<typename Container > |
constexpr auto | rend (Container const &c) -> decltype(c.rend()) |
|
template<typename T , size_t N> |
constexpr auto | rend (T(&array)[N]) -> reverse_iterator< T * > |
|
template<typename ForwardIt , typename T > |
constexpr auto | replace (ForwardIt first, ForwardIt last, T const &oldValue, T const &newValue) -> void |
| Replaces all elements satisfying specific criteria with new_value in the range [first, last). Replaces all elements that are equal to old_value.
|
|
template<typename ForwardIt , typename Predicate , typename T > |
constexpr auto | replace_if (ForwardIt first, ForwardIt last, Predicate p, T const &newValue) -> void |
| Replaces all elements satisfying specific criteria with new_value in the range [first, last). Replaces all elements for which predicate p returns true.
|
|
template<etl::size_t Pos, etl::builtin_unsigned_integer UInt> |
constexpr auto | reset_bit (UInt word) noexcept -> UInt |
| Reset bit at position Pos.
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | reset_bit (UInt word, UInt pos) noexcept -> UInt |
| Reset bit at position pos .
|
|
template<typename BidirIt > |
constexpr auto | reverse (BidirIt first, BidirIt last) -> void |
| Reverses the order of the elements in the range [first, last) .
|
|
template<typename BidirIt , typename OutputIt > |
constexpr auto | reverse_copy (BidirIt first, BidirIt last, OutputIt destination) -> OutputIt |
| Copies the elements from the range [first, last) to another range beginning at d_first in such a way that the elements in the new range are in reverse order.
|
|
constexpr auto | rint (double arg) noexcept -> double |
| Rounds the floating-point argument arg to an integer value (in floating-point format), using the current rounding mode.
|
|
constexpr auto | rint (float arg) noexcept -> float |
| Rounds the floating-point argument arg to an integer value (in floating-point format), using the current rounding mode.
|
|
constexpr auto | rint (long double arg) noexcept -> long double |
| Rounds the floating-point argument arg to an integer value (in floating-point format), using the current rounding mode.
|
|
template<integral T> |
constexpr auto | rint (T arg) noexcept -> double |
| Rounds the floating-point argument arg to an integer value (in floating-point format), using the current rounding mode.
|
|
constexpr auto | rintf (float arg) noexcept -> float |
| Rounds the floating-point argument arg to an integer value (in floating-point format), using the current rounding mode.
|
|
constexpr auto | rintl (long double arg) noexcept -> long double |
| Rounds the floating-point argument arg to an integer value (in floating-point format), using the current rounding mode.
|
|
template<typename ForwardIt > |
constexpr auto | rotate (ForwardIt first, ForwardIt nFirst, ForwardIt last) -> ForwardIt |
| Performs a left rotation on a range of elements.
|
|
template<typename ForwardIt , typename OutputIt > |
constexpr auto | rotate_copy (ForwardIt first, ForwardIt nFirst, ForwardIt last, OutputIt destination) -> OutputIt |
| Copies the elements from the range [first, last) , to another range beginning at destination in such a way, that the element nFirst becomes the first element of the new range and nFirst - 1 becomes the last element.
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | rotl (UInt t, int s) noexcept -> UInt |
| Computes the result of bitwise left-rotating the value of x by s positions. This operation is also known as a left circular shift.
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | rotr (UInt t, int s) noexcept -> UInt |
| Computes the result of bitwise right-rotating the value of x by s positions. This operation is also known as a right circular shift.
|
|
template<builtin_integer To, builtin_integer From> |
constexpr auto | saturate_cast (From x) noexcept -> To |
| Converts the value x to a value of type T, clamping x between the minimum and maximum values of type T.
|
|
template<typename FuncT > |
| scope_exit (FuncT) -> scope_exit< decay_t< FuncT > > |
|
template<etl::size_t Pos, etl::builtin_unsigned_integer UInt> |
constexpr auto | set_bit (UInt word) noexcept -> UInt |
| Set bit at position Pos
|
|
template<etl::size_t Pos, etl::builtin_unsigned_integer UInt> |
constexpr auto | set_bit (UInt word, bool value) noexcept -> UInt |
| Set bit at position Pos to value .
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | set_bit (UInt word, UInt pos) noexcept -> UInt |
| Set bit at position pos .
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | set_bit (UInt word, UInt pos, bool value) -> UInt |
| Set bit at position pos to value .
|
|
template<typename ForwardIt > |
constexpr auto | shift_left (ForwardIt first, ForwardIt const last, typename iterator_traits< ForwardIt >::difference_type n) -> ForwardIt |
| Shifts the elements in the range [first, last) by n positions.
|
|
template<typename BidiIt > |
constexpr auto | shift_right (BidiIt first, BidiIt last, typename etl::iterator_traits< BidiIt >::difference_type n) -> BidiIt |
| Shifts the elements in the range [first, last) by n positions.
|
|
constexpr auto | signbit (double arg) noexcept -> bool |
| Determines if the given floating point number arg is negative.
|
|
constexpr auto | signbit (float arg) noexcept -> bool |
| Determines if the given floating point number arg is negative.
|
|
constexpr auto | signbit (half arg) noexcept -> bool |
|
constexpr auto | signbit (long double arg) noexcept -> bool |
| Determines if the given floating point number arg is negative.
|
|
template<typename T > |
constexpr auto | sin (complex< T > const &z) -> complex< T > |
|
template<typename T > |
constexpr auto | sinh (complex< T > const &z) -> complex< T > |
|
constexpr auto | sinh (double arg) noexcept -> double |
| Computes the hyperbolic sine of arg.
|
|
constexpr auto | sinh (float arg) noexcept -> float |
| Computes the hyperbolic sine of arg.
|
|
constexpr auto | sinh (long double arg) noexcept -> long double |
| Computes the hyperbolic sine of arg.
|
|
template<integral T> |
constexpr auto | sinh (T arg) noexcept -> double |
| Computes the hyperbolic sine of arg.
|
|
constexpr auto | sinhf (float arg) noexcept -> float |
| Computes the hyperbolic sine of arg.
|
|
constexpr auto | sinhl (long double arg) noexcept -> long double |
| Computes the hyperbolic sine of arg.
|
|
template<typename C > |
constexpr auto | size (C const &c) noexcept(noexcept(c.size())) -> decltype(c.size()) |
| Returns the size of the given container c or array array. Returns c.size(), converted to the return type if necessary.
|
|
template<typename T , size_t N> |
constexpr auto | size (T const (&array)[N]) noexcept -> size_t |
|
template<typename Type , size_t Size> |
| span (array< Type, Size > &) -> span< Type, Size > |
|
template<typename Type , size_t Size> |
| span (array< Type, Size > const &) -> span< Type const, Size > |
|
template<typename Type , size_t Extent> |
| span (c_array< Type, Extent > &) -> span< Type, Extent > |
|
template<ranges::range R> |
| span (R &&) -> span< remove_reference_t< ranges::range_reference_t< R > > > |
|
constexpr auto | sqrt (double arg) noexcept -> double |
| Computes the square root of arg.
|
|
constexpr auto | sqrt (float arg) noexcept -> float |
| Computes the square root of arg.
|
|
constexpr auto | sqrt (long double arg) noexcept -> long double |
| Computes the square root of arg.
|
|
template<integral T> |
constexpr auto | sqrt (T arg) noexcept -> double |
| Computes the square root of arg.
|
|
constexpr auto | sqrtf (float arg) noexcept -> float |
| Computes the square root of arg.
|
|
constexpr auto | sqrtl (long double arg) noexcept -> long double |
| Computes the square root of arg.
|
|
template<typename C > |
constexpr auto | ssize (C const &c) -> common_type_t< ptrdiff_t, make_signed_t< decltype(c.size())> > |
|
template<typename T , ptrdiff_t N> |
constexpr auto | ssize (T const (&array)[static_cast< size_t >(N)]) noexcept -> ptrdiff_t |
|
template<typename BidirIt , typename Predicate > |
constexpr auto | stable_partition (BidirIt f, BidirIt l, Predicate p) -> BidirIt |
| Reorders the elements in the range [first, last) in such a way that all elements for which the predicate p returns true precede the elements for which predicate p returns false. Relative order of the elements is preserved.
|
|
template<typename Container > |
| stack (Container) -> stack< typename Container::value_type, Container > |
|
template<size_t Capacity> |
constexpr auto | stod (inplace_string< Capacity > const &str, size_t *pos=nullptr) -> double |
| Interprets a floating point value in a string str.
|
|
template<size_t Capacity> |
constexpr auto | stof (inplace_string< Capacity > const &str, size_t *pos=nullptr) -> float |
| Interprets a floating point value in a string str.
|
|
constexpr auto | stoi (etl::string_view str, etl::size_t *pos=nullptr, int base=10) -> int |
| Interprets a signed integer value in the string str.
|
|
constexpr auto | stol (etl::string_view str, etl::size_t *pos=nullptr, int base=10) -> long |
| Interprets a signed integer value in the string str.
|
|
template<size_t Capacity> |
constexpr auto | stold (inplace_string< Capacity > const &str, size_t *pos=nullptr) -> long double |
| Interprets a floating point value in a string str.
|
|
constexpr auto | stoll (etl::string_view str, etl::size_t *pos=nullptr, int base=10) -> long long |
| Interprets a signed integer value in the string str.
|
|
constexpr auto | stoul (etl::string_view str, etl::size_t *pos=nullptr, int base=10) -> unsigned long |
| Interprets a signed integer value in the string str.
|
|
constexpr auto | stoull (etl::string_view str, etl::size_t *pos=nullptr, int base=10) -> unsigned long long |
| Interprets a signed integer value in the string str.
|
|
constexpr auto | strcat (char *dest, char const *src) noexcept -> char * |
| Appends a copy of the character string pointed to by src to the end of the character string pointed to by dest. The character src[0] replaces the null terminator at the end of dest. The resulting byte string is null-terminated.
|
|
constexpr auto | strcmp (char const *lhs, char const *rhs) -> int |
| Compares the C string lhs to the C string rhs.
|
|
constexpr auto | strcpy (char *dest, char const *src) -> char * |
| Copies the character string pointed to by src, including the null terminator, to the character array whose first element is pointed to by dest.
|
|
constexpr auto | strcspn (char const *dest, char const *src) noexcept -> etl::size_t |
| Returns the length of the maximum initial segment of the byte string pointed to by dest, that consists of only the characters not found in byte string pointed to by src.
|
|
template<typename OffsetType , typename ExtentType , typename StrideType > |
| strided_slice (OffsetType, ExtentType, StrideType) -> strided_slice< OffsetType, ExtentType, StrideType > |
|
constexpr auto | strlen (char const *str) -> etl::size_t |
| Returns the length of the C string str.
|
|
constexpr auto | strncat (char *dest, char const *src, etl::size_t const count) -> char * |
| Appends a byte string pointed to by src to a byte string pointed to by dest. At most count characters are copied. The resulting byte string is null-terminated.
|
|
constexpr auto | strncmp (char const *lhs, char const *rhs, etl::size_t count) -> int |
| Compares at most count characters of two possibly null-terminated arrays. The comparison is done lexicographically. Characters following the null character are not compared.
|
|
constexpr auto | strncpy (char *dest, char const *src, etl::size_t const count) -> char * |
| Copies at most count characters of the byte string pointed to by src (including the terminating null character) to character array pointed to by dest.
|
|
constexpr auto | strspn (char const *dest, char const *src) noexcept -> etl::size_t |
| Returns the length of the maximum initial segment (span) of the byte string pointed to by dest, that consists of only the characters found in byte string pointed to by src.
|
|
constexpr auto | strtod (char const *str, char const **last=nullptr) noexcept -> double |
| Interprets a floating point value in a byte string pointed to by str.
|
|
constexpr auto | strtof (char const *str, char const **last=nullptr) noexcept -> float |
| Interprets a floating point value in a byte string pointed to by str.
|
|
constexpr auto | strtol (char const *str, char const **last, int base) noexcept -> long |
| Interprets an integer value in a byte string pointed to by str.
|
|
constexpr auto | strtold (char const *str, char const **last=nullptr) noexcept -> long double |
| Interprets a floating point value in a byte string pointed to by str.
|
|
constexpr auto | strtoll (char const *str, char const **last, int base) noexcept -> long long |
| Interprets an integer value in a byte string pointed to by str.
|
|
constexpr auto | strtoul (char const *str, char const **last, int base) noexcept -> unsigned long |
| Interprets an integer value in a byte string pointed to by str.
|
|
constexpr auto | strtoull (char const *str, char const **last, int base) noexcept -> unsigned long long |
| Interprets an integer value in a byte string pointed to by str.
|
|
template<typename IndexT , etl::size_t... Extents, typename... SliceSpecifiers>
requires (sizeof...(slices) == etl::extents<IndexT, Extents...>::rank()) |
constexpr auto | submdspan_extents (etl::extents< IndexT, Extents... > const &ext, SliceSpecifiers... slices) |
|
template<typename Char , typename Traits , etl::size_t Capacity> |
constexpr auto | swap (etl::basic_inplace_string< Char, Capacity, Traits > &lhs, etl::basic_inplace_string< Char, Capacity, Traits > &rhs) noexcept(noexcept(lhs.swap(rhs))) -> void |
| Specializes the etl::swap algorithm for etl::basic_inplace_string. Swaps the contents of lhs and rhs. Equivalent to lhs.swap(rhs).
|
|
template<typename R , typename... Args, size_t Capacity, size_t Alignment> |
auto | swap (inplace_function< R(Args...), Capacity, Alignment > &lhs, inplace_function< R(Args...), Capacity, Alignment > &rhs) noexcept -> void |
| Overloads the etl::swap algorithm for etl::inplace_function. Exchanges the state of lhs with that of rhs. Effectively calls lhs.swap(rhs).
|
|
template<typename T1 , typename T2 > |
constexpr auto | swap (pair< T1, T2 > &lhs, pair< T1, T2 > &rhs) noexcept(noexcept(lhs.swap(rhs))) -> void |
| Swaps the contents of x and y. Equivalent to x.swap(y).
|
|
template<typename T , typename C >
requires (is_swappable_v<C>) |
constexpr auto | swap (stack< T, C > &lhs, stack< T, C > &rhs) noexcept(noexcept(lhs.swap(rhs))) -> void |
| Specializes the swap algorithm for stack. Swaps the contents of lhs and rhs. This overload only participates in overload resolution if is_swappable<C>::value is true.
|
|
template<typename Key , size_t Capacity, typename Compare > |
constexpr auto | swap (static_set< Key, Capacity, Compare > &lhs, static_set< Key, Capacity, Compare > &rhs) noexcept(noexcept(lhs.swap(rhs))) -> void |
| Specializes the swap algorithm for set. Swaps the contents of lhs and rhs. Calls lhs.swap(rhs).
|
|
template<typename T , size_t Capacity> |
constexpr auto | swap (static_vector< T, Capacity > &lhs, static_vector< T, Capacity > &rhs) noexcept -> void |
| Specializes the swap algorithm for static_vector. Swaps the contents of lhs and rhs.
|
|
template<typename T > |
constexpr auto | swap (T &a, T &b) noexcept -> void |
| Exchanges the given values. Swaps the values a and b. This overload does not participate in overload resolution unless etl::is_move_constructible_v<T> && etl::is_move_assignable_v<T> is true.
|
|
template<typename T >
requires (etl::is_move_constructible_v<T> && etl::is_move_assignable_v<T>) |
constexpr auto | swap (T &a, T &b) noexcept(etl::is_nothrow_move_constructible_v< T > &&etl::is_nothrow_move_assignable_v< T >) -> void |
| Exchanges the given values. Swaps the values a and b. This overload does not participate in overload resolution unless etl::is_move_constructible_v<T> && etl::is_move_assignable_v<T> is true.
|
|
template<typename T >
requires (etl::is_move_constructible_v<T> and etl::is_move_assignable_v<T>) |
constexpr auto | swap (T &a, T &b) noexcept(etl::is_nothrow_move_constructible_v< T > and etl::is_nothrow_move_assignable_v< T >) -> void |
| Exchanges the given values. Swaps the values a and b. This overload does not participate in overload resolution unless etl::is_move_constructible_v<T> && etl::is_move_assignable_v<T> is true.
|
|
template<typename T , etl::size_t N>
requires (etl::is_swappable<T>::value) |
constexpr auto | swap (T(&a)[N], T(&b)[N]) noexcept(etl::is_nothrow_swappable< T >::value) -> void |
|
template<typename T , etl::size_t N>
requires (etl::is_swappable_v<T>) |
constexpr auto | swap (T(&a)[N], T(&b)[N]) noexcept(etl::is_nothrow_swappable< T >::value) -> void |
|
template<typename ForwardIt1 , typename ForwardIt2 > |
constexpr auto | swap_ranges (ForwardIt1 first1, ForwardIt1 last1, ForwardIt2 first2) -> ForwardIt2 |
| Exchanges elements between range [first1 ,last1) and another range starting at first2 .
|
|
template<typename T > |
constexpr auto | tan (complex< T > const &z) -> complex< T > |
|
template<typename T > |
constexpr auto | tanh (complex< T > const &z) -> complex< T > |
|
template<etl::size_t Pos, etl::builtin_unsigned_integer UInt> |
constexpr auto | test_bit (UInt word) noexcept -> bool |
| Test bit at position Pos
|
|
template<etl::builtin_unsigned_integer UInt> |
constexpr auto | test_bit (UInt word, UInt pos) noexcept -> bool |
| Test bit at position pos .
|
|
template<typename T > |
void | test_implicit_default_constructible (T) |
|
template<typename... Args> |
constexpr auto | tie (Args &... args) noexcept -> tuple< Args &... > |
|
template<typename Ptr > |
constexpr auto | to_address (Ptr const &ptr) noexcept |
| Obtain the address represented by p without forming a reference to the object pointed to by p.
|
|
template<typename T >
requires (not is_function_v<T>) |
constexpr auto | to_address (T *ptr) noexcept -> T * |
| Obtain the address represented by p without forming a reference to the object pointed to by p.
|
|
constexpr auto | to_chars (char *, char *, bool, int=10) -> to_chars_result=delete |
|
template<integral T>
requires (not same_as<T, bool>) |
constexpr auto | to_chars (char *first, char *last, T val, int base=10) -> to_chars_result |
| Converts value into a character string by successively filling the range [first, last), where [first, last) is required to be a valid range.
|
|
template<etl::integral Int> |
constexpr auto | to_integer (etl::byte b) noexcept -> Int |
| Equivalent to: return Int(b);
|
|
template<etl::size_t Capacity> |
constexpr auto | to_string (int value) noexcept -> etl::inplace_string< Capacity > |
| Converts a numeric value to etl::inplace_string.
|
|
template<etl::size_t Capacity> |
constexpr auto | to_string (long long value) noexcept -> etl::inplace_string< Capacity > |
| Converts a numeric value to etl::inplace_string.
|
|
template<etl::size_t Capacity> |
constexpr auto | to_string (long value) noexcept -> etl::inplace_string< Capacity > |
| Converts a numeric value to etl::inplace_string.
|
|
template<etl::size_t Capacity> |
constexpr auto | to_string (unsigned long long value) noexcept -> etl::inplace_string< Capacity > |
| Converts a numeric value to etl::inplace_string.
|
|
template<etl::size_t Capacity> |
constexpr auto | to_string (unsigned long value) noexcept -> etl::inplace_string< Capacity > |
| Converts a numeric value to etl::inplace_string.
|
|
template<etl::size_t Capacity> |
constexpr auto | to_string (unsigned value) noexcept -> etl::inplace_string< Capacity > |
| Converts a numeric value to etl::inplace_string.
|
|
template<typename Enum > |
constexpr auto | to_underlying (Enum e) noexcept -> underlying_type_t< Enum > |
| Converts an enumeration to its underlying type.
|
|
constexpr auto | tolower (int ch) noexcept -> int |
| Converts the given character to lowercase according to the character conversion rules defined by the default C locale.
|
|
constexpr auto | toupper (int ch) noexcept -> int |
| Converts the given character to uppercase according to the character conversion rules defined by the default C locale.
|
|
constexpr auto | towlower (wint_t ch) noexcept -> wint_t |
| Converts the given wide character to lowercase, if possible.
|
|
constexpr auto | towupper (wint_t ch) noexcept -> wint_t |
| Converts the given wide character to uppercase, if possible.
|
|
template<typename InputIt , typename T , typename BinaryReductionOp , typename UnaryTransformOp > |
constexpr auto | transform_reduce (InputIt first, InputIt last, T init, BinaryReductionOp reduce, UnaryTransformOp transform) -> T |
| https://en.cppreference.com/w/cpp/algorithm/transform_reduce
|
|
template<typename InputIt1 , typename InputIt2 , typename T > |
constexpr auto | transform_reduce (InputIt1 first1, InputIt1 last1, InputIt2 first2, T init) -> T |
| https://en.cppreference.com/w/cpp/algorithm/transform_reduce
|
|
template<typename InputIt1 , typename InputIt2 , typename T , typename BinaryReductionOp , typename BinaryTransformOp > |
constexpr auto | transform_reduce (InputIt1 first1, InputIt1 last1, InputIt2 first2, T init, BinaryReductionOp reduce, BinaryTransformOp transform) -> T |
| https://en.cppreference.com/w/cpp/algorithm/transform_reduce
|
|
template<etl::tuple_like... Tuples> |
constexpr auto | tuple_cat (Tuples &&... ts) |
|
template<etl::size_t I, typename... Ts> |
constexpr auto | unchecked_get (variant< Ts... > &&v) -> auto && |
|
template<etl::size_t I, typename... Ts> |
constexpr auto | unchecked_get (variant< Ts... > &v) -> auto & |
|
template<etl::size_t I, typename... Ts> |
constexpr auto | unchecked_get (variant< Ts... > const &&v) -> auto const && |
|
template<etl::size_t I, typename... Ts> |
constexpr auto | unchecked_get (variant< Ts... > const &v) -> auto const & |
|
template<typename E > |
| unexpected (E) -> unexpected< E > |
|
template<typename InputIt , typename NoThrowForwardIt > |
constexpr auto | uninitialized_copy (InputIt first, InputIt last, NoThrowForwardIt dest) -> NoThrowForwardIt |
|
template<typename ForwardIt , typename T > |
constexpr auto | uninitialized_fill (ForwardIt first, ForwardIt last, T const &value) -> void |
|
template<typename InputIt , typename NoThrowForwardIt > |
constexpr auto | uninitialized_move (InputIt first, InputIt last, NoThrowForwardIt dest) -> NoThrowForwardIt |
|
auto | unreachable () -> void |
|
template<typename OutputIt > |
auto | vformat_to (OutputIt out, string_view fmt, format_args args) -> OutputIt |
|
constexpr auto | wcscat (wchar_t *dest, wchar_t const *src) -> wchar_t * |
| Appends a copy of the wide string pointed to by src to the end of the wide string pointed to by dest. The wide character src[0] replaces the null terminator at the end of dest. The resulting wide string is null-terminated.
|
|
constexpr auto | wcschr (wchar_t *str, int ch) -> wchar_t * |
| Finds the first occurrence of the wide character ch in the wide string pointed to by str.
|
|
constexpr auto | wcschr (wchar_t const *str, int ch) -> wchar_t const * |
| Finds the first occurrence of the wide character ch in the wide string pointed to by str.
|
|
constexpr auto | wcscmp (wchar_t const *lhs, wchar_t const *rhs) -> int |
| Compares two null-terminated wide strings lexicographically.
|
|
constexpr auto | wcscpy (wchar_t *dest, wchar_t const *src) -> wchar_t * |
| Copies the wide string pointed to by src (including the terminating null wide character) to wide character array pointed to by dest.
|
|
constexpr auto | wcscspn (wchar_t const *dest, wchar_t const *src) noexcept -> etl::size_t |
| Returns the length of the maximum initial segment of the wide string pointed to by dest, that consists of only the characters not found in wide string pointed to by src.
|
|
constexpr auto | wcslen (wchar_t const *str) -> size_t |
| Returns the length of a wide string, that is the number of non-null wide characters that precede the terminating null wide character.
|
|
constexpr auto | wcsncat (wchar_t *dest, wchar_t const *src, etl::size_t const count) -> wchar_t * |
| Appends at most count wide characters from the wide string pointed to by src to the end of the character string pointed to by dest, stopping if the null terminator is copied. The wide character src[0] replaces the null terminator at the end of dest. The null terminator is always appended in the end (so the maximum number of wide characters the function may write is count+1).
|
|
constexpr auto | wcsncmp (wchar_t const *lhs, wchar_t const *rhs, etl::size_t count) -> int |
| Compares at most count wide characters of two null-terminated wide strings. The comparison is done lexicographically.
|
|
constexpr auto | wcsncpy (wchar_t *dest, wchar_t const *src, etl::size_t const count) -> wchar_t * |
| Copies at most count characters of the wide string pointed to by src (including the terminating null wide character) to wide character array pointed to by dest.
|
|
constexpr auto | wcspbrk (wchar_t *dest, wchar_t *breakset) noexcept -> wchar_t * |
| Finds the first character in wide string pointed to by dest, that is also in wide string pointed to by str.
|
|
constexpr auto | wcspbrk (wchar_t const *dest, wchar_t const *breakset) noexcept -> wchar_t const * |
| Finds the first character in wide string pointed to by dest, that is also in wide string pointed to by str.
|
|
constexpr auto | wcsrchr (wchar_t *str, int ch) -> wchar_t * |
| Finds the last occurrence of the wide character ch in the wide string pointed to by str.
|
|
constexpr auto | wcsrchr (wchar_t const *str, int ch) -> wchar_t const * |
| Finds the last occurrence of the wide character ch in the wide string pointed to by str.
|
|
constexpr auto | wcsspn (wchar_t const *dest, wchar_t const *src) noexcept -> etl::size_t |
| Returns the length of the maximum initial segment of the wide string pointed to by dest, that consists of only the characters found in wide string pointed to by src.
|
|
constexpr auto | wcsstr (wchar_t *haystack, wchar_t *needle) noexcept -> wchar_t * |
| Finds the first occurrence of the wide string needle in the wide string pointed to by haystack. The terminating null characters are not compared.
|
|
constexpr auto | wcsstr (wchar_t const *haystack, wchar_t const *needle) noexcept -> wchar_t const * |
| Finds the first occurrence of the wide string needle in the wide string pointed to by haystack. The terminating null characters are not compared.
|
|
constexpr auto | wmemchr (wchar_t *ptr, wchar_t ch, etl::size_t count) noexcept -> wchar_t * |
| Locates the first occurrence of wide character ch in the initial count wide characters of the wide character array pointed to by ptr.
|
|
constexpr auto | wmemchr (wchar_t const *ptr, wchar_t ch, etl::size_t count) noexcept -> wchar_t const * |
| Locates the first occurrence of wide character ch in the initial count wide characters of the wide character array pointed to by ptr.
|
|
constexpr auto | wmemcmp (wchar_t const *lhs, wchar_t const *rhs, etl::size_t count) noexcept -> int |
| Compares the first count wide characters of the wide character arrays pointed to by lhs and rhs. The comparison is done lexicographically.
|
|
constexpr auto | wmemcpy (wchar_t *dest, wchar_t const *src, etl::size_t count) noexcept -> wchar_t * |
| Copies exactly count successive wide characters from the wide character array pointed to by src to the wide character array pointed to by dest. If the objects overlap, the behavior is undefined. If count is zero, the function does nothing.
|
|
constexpr auto | wmemmove (wchar_t *dest, wchar_t const *src, etl::size_t count) noexcept -> wchar_t * |
| Copies exactly count successive wide characters from the wide character array pointed to by src to the wide character array pointed to by dest.
|
|
constexpr auto | wmemset (wchar_t *dest, wchar_t ch, etl::size_t count) noexcept -> wchar_t * |
| Copies the wide character ch into each of the first count wide characters of the wide character array pointed to by dest.
|
|
|
template<typename ForwardIt , typename Predicate > |
constexpr auto | adjacent_find (ForwardIt first, ForwardIt last, Predicate pred) -> ForwardIt |
| Searches the range [first, last) for two consecutive equal elements. Elements are compared using the given binary predicate p.
|
|
template<typename ForwardIt > |
constexpr auto | adjacent_find (ForwardIt first, ForwardIt last) -> ForwardIt |
| Searches the range [first, last) for two consecutive equal elements. Elements are compared using the given binary predicate p.
|
|
|
template<typename InputIt , typename Predicate > |
constexpr auto | all_of (InputIt first, InputIt last, Predicate p) -> bool |
| Checks if unary predicate p returns true for all elements in the range [first, last) .
|
|
|
template<typename InputIt , typename Predicate > |
constexpr auto | any_of (InputIt first, InputIt last, Predicate p) -> bool |
| Checks if unary predicate p returns true for at least one element in the range [first, last) .
|
|
|
template<typename ForwardIt , typename T , typename Compare > |
constexpr auto | binary_search (ForwardIt first, ForwardIt last, T const &value, Compare comp) -> bool |
|
template<typename ForwardIt , typename T > |
constexpr auto | binary_search (ForwardIt first, ForwardIt last, T const &value) -> bool |
|
|
template<typename RandomIt , typename Compare > |
constexpr auto | bubble_sort (RandomIt first, RandomIt last, Compare comp) -> void |
| Sorts the elements in the range [first, last) in non-descending order. The order of equal elements is guaranteed to be preserved.
|
|
template<typename RandomIt > |
constexpr auto | bubble_sort (RandomIt first, RandomIt last) -> void |
| Sorts the elements in the range [first, last) in non-descending order. The order of equal elements is guaranteed to be preserved.
|
|
|
template<typename Type , typename Compare > |
constexpr auto | clamp (Type const &v, Type const &lo, Type const &hi, Compare comp) -> Type const & |
| If v compares less than lo, returns lo; otherwise if hi compares less than v, returns hi; otherwise returns v. Uses operator< to compare the values.
|
|
template<typename Type > |
constexpr auto | clamp (Type const &v, Type const &lo, Type const &hi) noexcept -> Type const & |
| If v compares less than lo, returns lo; otherwise if hi compares less than v, returns hi; otherwise returns v. Uses operator< to compare the values.
|
|
|
template<typename BidirIt , typename Compare > |
constexpr auto | merge_sort (BidirIt first, BidirIt last, Compare comp) -> void |
| Sorts the elements in the range [first, last) in non-descending order.
|
|
template<typename BidirIt > |
constexpr auto | merge_sort (BidirIt first, BidirIt last) -> void |
| Sorts the elements in the range [first, last) in non-descending order.
|
|
|
template<typename FwdIt1 , typename FwdIt2 , typename Predicate > |
constexpr auto | search (FwdIt1 first, FwdIt1 last, FwdIt2 sFirst, FwdIt2 sLast, Predicate pred) -> FwdIt1 |
|
template<typename FwdIt1 , typename FwdIt2 > |
constexpr auto | search (FwdIt1 first, FwdIt1 last, FwdIt2 sFirst, FwdIt2 sLast) -> FwdIt1 |
|
template<typename FwdIt , typename Searcher > |
constexpr auto | search (FwdIt first, FwdIt last, Searcher const &searcher) -> FwdIt |
|
|
template<typename ForwardIt , typename Size , typename ValueT , typename Predicate > |
constexpr auto | search_n (ForwardIt first, ForwardIt last, Size count, ValueT const &value, Predicate pred) -> ForwardIt |
| Searches the range [first, last) for the first sequence of count identical elements, each equal to the given value.
|
|
template<typename ForwardIt , typename Size , typename ValueT > |
constexpr auto | search_n (ForwardIt first, ForwardIt last, Size count, ValueT const &value) -> ForwardIt |
| Searches the range [first, last) for the first sequence of count identical elements, each equal to the given value.
|
|
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt , typename Compare > |
constexpr auto | set_difference (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt destination, Compare comp) -> OutputIt |
| Copies the elements from the sorted range [first1, last1) which are not found in the sorted range [first2, last2) to the range beginning at destination. Elements are compared using the given binary comparison function comp and the ranges must be sorted with respect to the same.
|
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt > |
constexpr auto | set_difference (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt destination) -> OutputIt |
| Copies the elements from the sorted range [first1, last1) which are not found in the sorted range [first2, last2) to the range beginning at destination. Elements are compared using the given binary comparison function comp and the ranges must be sorted with respect to the same.
|
|
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt , typename Compare > |
constexpr auto | set_intersection (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt dest, Compare comp) -> OutputIt |
| Constructs a sorted range beginning at dest consisting of elements that are found in both sorted ranges [first1, last1) and [first2, last2) . If some element is found m times in [first1, last1) and n times in [first2, last2) , the first min(m, n) elements will be copied from the first range to the destination range. The order of equivalent elements is preserved. The resulting range cannot overlap with either of the input ranges.
|
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt > |
constexpr auto | set_intersection (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt dest) -> OutputIt |
| Constructs a sorted range beginning at dest consisting of elements that are found in both sorted ranges [first1, last1) and [first2, last2) . If some element is found m times in [first1, last1) and n times in [first2, last2) , the first min(m, n) elements will be copied from the first range to the destination range. The order of equivalent elements is preserved. The resulting range cannot overlap with either of the input ranges.
|
|
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt , typename Compare > |
constexpr auto | set_symmetric_difference (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt destination, Compare comp) -> OutputIt |
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt > |
constexpr auto | set_symmetric_difference (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt dest) -> OutputIt |
|
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt , typename Compare > |
constexpr auto | set_union (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt destination, Compare comp) -> OutputIt |
| Constructs a sorted union beginning at destination consisting of the set of elements present in one or both sorted ranges [first1, last1) and [first2, last2) . The resulting range cannot overlap with either of the input ranges.
|
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt > |
constexpr auto | set_union (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt destination) -> OutputIt |
| Constructs a sorted union beginning at destination consisting of the set of elements present in one or both sorted ranges [first1, last1) and [first2, last2) . The resulting range cannot overlap with either of the input ranges.
|
|
|
template<typename RandomIt , typename Compare > |
constexpr auto | sort (RandomIt first, RandomIt last, Compare comp) -> void |
|
template<typename RandomIt > |
constexpr auto | sort (RandomIt first, RandomIt last) -> void |
|
|
template<typename RandomIt , typename Compare > |
constexpr auto | stable_sort (RandomIt first, RandomIt last, Compare comp) -> void |
|
template<typename RandomIt > |
constexpr auto | stable_sort (RandomIt first, RandomIt last) -> void |
|
|
template<typename InputIt , typename OutputIt , typename UnaryOp > |
constexpr auto | transform (InputIt first, InputIt last, OutputIt dest, UnaryOp op) -> OutputIt |
|
template<typename InputIt1 , typename InputIt2 , typename OutputIt , typename BinaryOp > |
constexpr auto | transform (InputIt1 first1, InputIt1 last1, InputIt2 first2, OutputIt dest, BinaryOp op) -> OutputIt |
|
|
template<typename ForwardIt , typename Predicate > |
constexpr auto | unique (ForwardIt first, ForwardIt last, Predicate pred) -> ForwardIt |
|
template<typename ForwardIt > |
constexpr auto | unique (ForwardIt first, ForwardIt last) -> ForwardIt |
|
|
template<typename InputIt , typename OutputIt , typename Predicate > |
constexpr auto | unique_copy (InputIt first, InputIt last, OutputIt destination, Predicate pred) -> OutputIt |
|
template<typename InputIt , typename OutputIt > |
constexpr auto | unique_copy (InputIt first, InputIt last, OutputIt destination) -> OutputIt |
|
|
template<typename ForwardIt , typename T , typename Compare > |
constexpr auto | upper_bound (ForwardIt first, ForwardIt last, T const &value, Compare comp) -> ForwardIt |
|
template<typename ForwardIt , typename T > |
constexpr auto | upper_bound (ForwardIt first, ForwardIt last, T const &value) -> ForwardIt |
|
|
constexpr auto | acos (float arg) noexcept -> float |
|
constexpr auto | acosf (float arg) noexcept -> float |
|
constexpr auto | acos (double arg) noexcept -> double |
|
constexpr auto | acos (long double arg) noexcept -> long double |
|
constexpr auto | acosl (long double arg) noexcept -> long double |
|
constexpr auto | acos (integral auto arg) noexcept -> double |
|
|
constexpr auto | acosh (float arg) noexcept -> float |
|
constexpr auto | acoshf (float arg) noexcept -> float |
|
constexpr auto | acosh (double arg) noexcept -> double |
|
constexpr auto | acosh (long double arg) noexcept -> long double |
|
constexpr auto | acoshl (long double arg) noexcept -> long double |
|
constexpr auto | acosh (integral auto arg) noexcept -> double |
|
|
constexpr auto | asin (float arg) noexcept -> float |
|
constexpr auto | asinf (float arg) noexcept -> float |
|
constexpr auto | asin (double arg) noexcept -> double |
|
constexpr auto | asin (long double arg) noexcept -> long double |
|
constexpr auto | asinl (long double arg) noexcept -> long double |
|
constexpr auto | asin (integral auto arg) noexcept -> double |
|
|
constexpr auto | asinh (float arg) noexcept -> float |
|
constexpr auto | asinhf (float arg) noexcept -> float |
|
constexpr auto | asinh (double arg) noexcept -> double |
|
constexpr auto | asinh (long double arg) noexcept -> long double |
|
constexpr auto | asinhl (long double arg) noexcept -> long double |
|
constexpr auto | asinh (integral auto arg) noexcept -> double |
|
|
constexpr auto | atan (float arg) noexcept -> float |
|
constexpr auto | atanf (float arg) noexcept -> float |
|
constexpr auto | atan (double arg) noexcept -> double |
|
constexpr auto | atan (long double arg) noexcept -> long double |
|
constexpr auto | atanl (long double arg) noexcept -> long double |
|
constexpr auto | atan (integral auto arg) noexcept -> double |
|
|
constexpr auto | atan2 (float x, float y) noexcept -> float |
|
constexpr auto | atan2f (float x, float y) noexcept -> float |
|
constexpr auto | atan2 (double x, double y) noexcept -> double |
|
constexpr auto | atan2 (long double x, long double y) noexcept -> long double |
|
constexpr auto | atan2l (long double x, long double y) noexcept -> long double |
|
|
constexpr auto | atanh (float arg) noexcept -> float |
|
constexpr auto | atanhf (float arg) noexcept -> float |
|
constexpr auto | atanh (double arg) noexcept -> double |
|
constexpr auto | atanh (long double arg) noexcept -> long double |
|
constexpr auto | atanhl (long double arg) noexcept -> long double |
|
constexpr auto | atanh (integral auto arg) noexcept -> double |
|
|
constexpr auto | beta (double x, double y) noexcept -> double |
|
constexpr auto | betaf (float x, float y) noexcept -> float |
|
constexpr auto | betal (long double x, long double y) noexcept -> long double |
|
|
constexpr auto | ceil (float arg) noexcept -> float |
|
constexpr auto | ceilf (float arg) noexcept -> float |
|
constexpr auto | ceil (double arg) noexcept -> double |
|
constexpr auto | ceil (long double arg) noexcept -> long double |
|
constexpr auto | ceill (long double arg) noexcept -> long double |
|
constexpr auto | ceil (integral auto arg) noexcept -> double |
|
|
constexpr auto | copysign (float mag, float sgn) -> float |
|
constexpr auto | copysignf (float mag, float sgn) -> float |
|
constexpr auto | copysign (double mag, double sgn) -> double |
|
constexpr auto | copysign (long double mag, long double sgn) -> long double |
|
constexpr auto | copysignl (long double mag, long double sgn) -> long double |
|
|
constexpr auto | cos (float arg) noexcept -> float |
|
constexpr auto | cosf (float arg) noexcept -> float |
|
constexpr auto | cos (double arg) noexcept -> double |
|
constexpr auto | cos (long double arg) noexcept -> long double |
|
constexpr auto | cosl (long double arg) noexcept -> long double |
|
constexpr auto | cos (integral auto arg) noexcept -> double |
|
|
constexpr auto | cosh (float arg) noexcept -> float |
|
constexpr auto | coshf (float arg) noexcept -> float |
|
constexpr auto | cosh (double arg) noexcept -> double |
|
constexpr auto | cosh (long double arg) noexcept -> long double |
|
constexpr auto | coshl (long double arg) noexcept -> long double |
|
constexpr auto | cosh (integral auto arg) noexcept -> double |
|
|
constexpr auto | erf (float arg) noexcept -> float |
|
constexpr auto | erff (float arg) noexcept -> float |
|
constexpr auto | erf (double arg) noexcept -> double |
|
constexpr auto | erf (long double arg) noexcept -> long double |
|
constexpr auto | erfl (long double arg) noexcept -> long double |
|
constexpr auto | erf (integral auto arg) noexcept -> double |
|
|
constexpr auto | exp (float arg) noexcept -> float |
|
constexpr auto | expf (float arg) noexcept -> float |
|
constexpr auto | exp (double arg) noexcept -> double |
|
constexpr auto | exp (long double arg) noexcept -> long double |
|
constexpr auto | expl (long double arg) noexcept -> long double |
|
constexpr auto | exp (integral auto arg) noexcept -> double |
|
|
constexpr auto | fdim (float x, float y) noexcept -> float |
|
constexpr auto | fdimf (float x, float y) noexcept -> float |
|
constexpr auto | fdim (double x, double y) noexcept -> double |
|
constexpr auto | fdim (long double x, long double y) noexcept -> long double |
|
constexpr auto | fdiml (long double x, long double y) noexcept -> long double |
|
|
constexpr auto | floor (float arg) noexcept -> float |
|
constexpr auto | floorf (float arg) noexcept -> float |
|
constexpr auto | floor (double arg) noexcept -> double |
|
constexpr auto | floor (long double arg) noexcept -> long double |
|
constexpr auto | floorl (long double arg) noexcept -> long double |
|
constexpr auto | floor (integral auto arg) noexcept -> double |
|
|
constexpr auto | fma (float x, float y, float z) noexcept -> float |
|
constexpr auto | fmaf (float x, float y, float z) noexcept -> float |
|
constexpr auto | fma (double x, double y, double z) noexcept -> double |
|
constexpr auto | fma (long double x, long double y, long double z) noexcept -> long double |
|
constexpr auto | fmal (long double x, long double y, long double z) noexcept -> long double |
|
|
constexpr auto | fmax (float x, float y) noexcept -> float |
|
constexpr auto | fmaxf (float x, float y) noexcept -> float |
|
constexpr auto | fmax (double x, double y) noexcept -> double |
|
constexpr auto | fmax (long double x, long double y) noexcept -> long double |
|
constexpr auto | fmaxl (long double x, long double y) noexcept -> long double |
|
|
constexpr auto | fmin (float x, float y) noexcept -> float |
|
constexpr auto | fminf (float x, float y) noexcept -> float |
|
constexpr auto | fmin (double x, double y) noexcept -> double |
|
constexpr auto | fmin (long double x, long double y) noexcept -> long double |
|
constexpr auto | fminl (long double x, long double y) noexcept -> long double |
|
|
constexpr auto | fmod (float x, float y) noexcept -> float |
|
constexpr auto | fmodf (float x, float y) noexcept -> float |
|
constexpr auto | fmod (double x, double y) noexcept -> double |
|
constexpr auto | fmod (long double x, long double y) noexcept -> long double |
|
constexpr auto | fmodl (long double x, long double y) noexcept -> long double |
|
|
constexpr auto | hypot (float x, float y) noexcept -> float |
|
constexpr auto | hypotf (float x, float y) noexcept -> float |
|
constexpr auto | hypot (double x, double y) noexcept -> double |
|
constexpr auto | hypot (long double x, long double y) noexcept -> long double |
|
constexpr auto | hypotl (long double x, long double y) noexcept -> long double |
|
constexpr auto | hypot (float x, float y, float z) noexcept -> float |
|
constexpr auto | hypot (double x, double y, double z) noexcept -> double |
|
constexpr auto | hypot (long double x, long double y, long double z) noexcept -> long double |
|
|
constexpr auto | log (float v) noexcept -> float |
|
constexpr auto | logf (float v) noexcept -> float |
|
constexpr auto | log (double v) noexcept -> double |
|
constexpr auto | log (long double v) noexcept -> long double |
|
constexpr auto | logl (long double v) noexcept -> long double |
|
constexpr auto | log (integral auto arg) noexcept -> double |
|
|
constexpr auto | log10 (float arg) noexcept -> float |
|
constexpr auto | log10f (float arg) noexcept -> float |
|
constexpr auto | log10 (double arg) noexcept -> double |
|
constexpr auto | log10 (long double arg) noexcept -> long double |
|
constexpr auto | log10l (long double arg) noexcept -> long double |
|
constexpr auto | log10 (integral auto arg) noexcept -> double |
|
|
constexpr auto | log1p (float v) noexcept -> float |
|
constexpr auto | log1pf (float v) noexcept -> float |
|
constexpr auto | log1p (double v) noexcept -> double |
|
constexpr auto | log1p (long double v) noexcept -> long double |
|
constexpr auto | log1pl (long double v) noexcept -> long double |
|
constexpr auto | log1p (integral auto arg) noexcept -> double |
|
|
constexpr auto | log2 (float arg) noexcept -> float |
|
constexpr auto | log2f (float arg) noexcept -> float |
|
constexpr auto | log2 (double arg) noexcept -> double |
|
constexpr auto | log2 (long double arg) noexcept -> long double |
|
constexpr auto | log2l (long double arg) noexcept -> long double |
|
constexpr auto | log2 (integral auto arg) noexcept -> double |
|
|
constexpr auto | nanf (char const *arg) noexcept -> float |
|
constexpr auto | nan (char const *arg) noexcept -> double |
|
constexpr auto | nanl (char const *arg) noexcept -> long double |
|
|
constexpr auto | nextafter (float from, float to) noexcept -> float |
|
constexpr auto | nextafterf (float from, float to) noexcept -> float |
|
constexpr auto | nextafter (double from, double to) noexcept -> double |
|
|
constexpr auto | round (float arg) noexcept -> float |
|
constexpr auto | roundf (float arg) noexcept -> float |
|
constexpr auto | round (double arg) noexcept -> double |
|
constexpr auto | round (long double arg) noexcept -> long double |
|
constexpr auto | roundl (long double arg) noexcept -> long double |
|
constexpr auto | round (integral auto arg) noexcept -> double |
|
|
constexpr auto | sin (float arg) noexcept -> float |
|
constexpr auto | sinf (float arg) noexcept -> float |
|
constexpr auto | sin (double arg) noexcept -> double |
|
constexpr auto | sin (long double arg) noexcept -> long double |
|
constexpr auto | sinl (long double arg) noexcept -> long double |
|
constexpr auto | sin (integral auto arg) noexcept -> double |
|
|
constexpr auto | tan (float arg) noexcept -> float |
|
constexpr auto | tanf (float arg) noexcept -> float |
|
constexpr auto | tan (double arg) noexcept -> double |
|
constexpr auto | tan (long double arg) noexcept -> long double |
|
constexpr auto | tanl (long double arg) noexcept -> long double |
|
constexpr auto | tan (integral auto arg) noexcept -> double |
|
|
constexpr auto | tanh (float arg) noexcept -> float |
|
constexpr auto | tanhf (float arg) noexcept -> float |
|
constexpr auto | tanh (double arg) noexcept -> double |
|
constexpr auto | tanh (long double arg) noexcept -> long double |
|
constexpr auto | tanhl (long double arg) noexcept -> long double |
|
constexpr auto | tanh (integral auto arg) noexcept -> double |
|
|
constexpr auto | tgamma (float arg) noexcept -> float |
|
constexpr auto | tgammaf (float arg) noexcept -> float |
|
constexpr auto | tgamma (double arg) noexcept -> double |
|
constexpr auto | tgamma (long double arg) noexcept -> long double |
|
constexpr auto | tgammal (long double arg) noexcept -> long double |
|
constexpr auto | tgamma (integral auto arg) noexcept -> double |
|
|
constexpr auto | trunc (float arg) noexcept -> float |
|
constexpr auto | truncf (float arg) noexcept -> float |
|
constexpr auto | trunc (double arg) noexcept -> double |
|
constexpr auto | trunc (long double arg) noexcept -> long double |
|
constexpr auto | truncl (long double arg) noexcept -> long double |
|
constexpr auto | trunc (integral auto arg) noexcept -> double |
|
|
auto | memchr (void *ptr, int ch, etl::size_t n) -> void * |
| Converts ch to unsigned char and locates the first occurrence of that value in the initial count characters (each interpreted as unsigned char) of the object pointed to by ptr.
|
|
auto | memchr (void const *ptr, int ch, etl::size_t n) -> void const * |
| Converts ch to unsigned char and locates the first occurrence of that value in the initial count characters (each interpreted as unsigned char) of the object pointed to by ptr.
|
|
|
constexpr auto | strchr (char const *str, int ch) -> char const * |
|
constexpr auto | strchr (char *str, int ch) -> char * |
|
|
constexpr auto | strpbrk (char const *dest, char const *breakset) noexcept -> char const * |
|
constexpr auto | strpbrk (char *dest, char *breakset) noexcept -> char * |
|
|
constexpr auto | strrchr (char const *str, int ch) noexcept -> char const * |
|
constexpr auto | strrchr (char *str, int ch) noexcept -> char * |
|
|
constexpr auto | strstr (char *haystack, char *needle) noexcept -> char * |
|
constexpr auto | strstr (char const *haystack, char const *needle) noexcept -> char const * |
|