|
template<typename T, typename... U> |
| array (T, U...) -> array< T, 1+sizeof...(U)> |
| One deduction guide is provided for array to provide an equivalent of experimental::make_array for construction of array from a variadic parameter pack. The program is ill-formed if (is_same_v<T, U> and ...) is not true. Note that it is true when sizeof...(U) is zero.
|
|
template<typename T> |
| optional (T) -> optional< T > |
|
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, size_t N> |
auto | as_bytes (span< T, N > s) noexcept -> span< byte const, detail::span_as_bytes_size< T, N > > |
| Obtains a view to the object representation of the elements of the span s.
|
|
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 T, size_t N> |
auto | as_writable_bytes (span< T, N > s) noexcept -> span< byte, detail::span_as_bytes_size< T, N > > |
| Obtains a view to the object representation of the elements of the span s.
|
|
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 Index, typename T, size_t Size> |
constexpr auto | get (array< T, Size > &&array) noexcept -> T && |
|
template<size_t Index, typename T, size_t Size> |
constexpr auto | get (array< T, Size > &array) noexcept -> T & |
| Extracts the Ith element element from the array. I must be an integer value in range [0, N). This is enforced at compile time as opposed to at() or operator[].
|
|
template<size_t Index, typename T, size_t Size> |
constexpr auto | get (array< T, Size > const &&array) noexcept -> T const && |
|
template<size_t Index, typename T, size_t Size> |
constexpr auto | get (array< T, Size > const &array) noexcept -> T const & |
|
template<size_t I, typename X> |
constexpr auto | get (complex< X > &&z) -> X && |
|
template<size_t I, typename X> |
constexpr auto | get (complex< X > &z) -> X & |
|
template<size_t I, typename X> |
constexpr auto | get (complex< X > const &&z) -> X const && |
|
template<size_t I, typename X> |
constexpr auto | get (complex< X > const &z) -> 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<size_t I, typename... Types> |
constexpr auto | get_if (variant< Types... > *pv) noexcept -> add_pointer_t< typename variant_alternative< I, variant< Types... > >::type > |
|
template<typename T, typename... Types> |
constexpr auto | get_if (variant< Types... > const *pv) noexcept -> add_pointer_t< T const > |
|
template<size_t I, typename... Types> |
constexpr auto | get_if (variant< Types... > const *pv) noexcept -> add_pointer_t< typename variant_alternative< I, variant< Types... > >::type const > |
|
template<typename T, typename... Ts> |
constexpr auto | get_if (variant< Ts... > *pv) noexcept -> add_pointer_t< T > |
| Type-based non-throwing accessor: The call is ill-formed if T is not a unique element of Ts....
|
|
template<size_t I, typename... Ts> |
constexpr auto | get_if (variant< Ts... > *pv) noexcept -> add_pointer_t< variant_alternative_t< I, variant< Ts... > > > |
| If pv is not a null pointer and pv->index() == I, returns a pointer to the value stored in the variant pointed to by pv. Otherwise, returns a null pointer value. The call is ill-formed if I is not a valid index in the variant.
|
|
template<typename T, typename... Ts> |
constexpr auto | get_if (variant< Ts... > const *pv) noexcept -> add_pointer_t< T const > |
| Type-based non-throwing accessor: The call is ill-formed if T is not a unique element of Ts....
|
|
template<size_t I, typename... Ts> |
constexpr auto | get_if (variant< Ts... > const *pv) noexcept -> add_pointer_t< variant_alternative_t< I, variant< Ts... > > const > |
| If pv is not a null pointer and pv->index() == I, returns a pointer to the value stored in the variant pointed to by pv. Otherwise, returns a null pointer value. The call is ill-formed if I is not a valid index in the variant.
|
|
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<typename T, typename... Ts> |
constexpr auto | holds_alternative (variant< Ts... > const &v) noexcept -> bool |
| Checks if the variant v holds the alternative T. The call is ill-formed if T does not appear exactly once in Ts...
|
|
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 T, typename... Args> |
constexpr auto | make_optional (Args &&... args) -> etl::optional< T > |
| Creates an optional object constructed in-place from args...
|
|
template<typename T> |
constexpr auto | make_optional (T &&value) -> etl::optional< etl::decay_t< T > > |
| Creates an optional object from value.
|
|
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""_d (unsigned long long d) noexcept -> etl::chrono::day |
| Forms a etl::chrono::day literal representing a day of the month in the calendar.
|
|
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""_sv (char const *str, etl::size_t len) noexcept -> etl::string_view |
| Forms a string view of a character literal. Returns etl::string_view{str, len}.
|
|
constexpr auto | operator""_sv (char16_t const *str, etl::size_t len) noexcept -> etl::u16string_view |
| Forms a string view of a character literal. Returns etl::u16string_view{str, len}.
|
|
constexpr auto | operator""_sv (char32_t const *str, etl::size_t len) noexcept -> etl::u32string_view |
| Forms a string view of a character literal. Returns etl::u32string_view{str, len}.
|
|
constexpr auto | operator""_sv (char8_t const *str, etl::size_t len) noexcept -> etl::u8string_view |
| Forms a string view of a character literal. Returns etl::u8string_view{str, len}.
|
|
constexpr auto | operator""_sv (wchar_t const *str, etl::size_t len) noexcept -> etl::wstring_view |
| Forms a string view of a character literal. Returns etl::wstring_view{str, len}.
|
|
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).
|
|
constexpr auto | operator""_y (unsigned long long y) noexcept -> etl::chrono::year |
| Forms a etl::chrono::year literal representing a year in the proleptic Gregorian calendar.
|
|
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<typename T> |
constexpr auto | operator< (etl::nullopt_t, optional< T > const &opt) noexcept -> bool |
| Compares opt with a nullopt.
|
|
template<typename T> |
constexpr auto | operator< (optional< T > const &, etl::nullopt_t) noexcept -> bool |
| Compares opt with a nullopt.
|
|
template<typename T, typename U> |
constexpr auto | operator< (optional< T > const &lhs, optional< U > const &rhs) -> bool |
| Compares two optional objects, lhs and rhs.
|
|
template<typename T, typename U> |
constexpr auto | operator< (optional< T > const &opt, U const &value) -> bool |
| Compares opt with a value. The values are compared (using the corresponding operator of T) only if opt contains a value. Otherwise, opt is considered less than value. If the corresponding two-way comparison expression between *opt and value is not well-formed, or if its result is not convertible to bool, the program is ill-formed.
|
|
template<typename T, typename U> |
constexpr auto | operator< (T const &value, optional< U > const &opt) -> bool |
| Compares opt with a value. The values are compared (using the corresponding operator of T) only if opt contains a value. Otherwise, opt is considered less than value. If the corresponding two-way comparison expression between *opt and value is not well-formed, or if its result is not convertible to bool, the program is ill-formed.
|
|
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 T, typename U> |
constexpr auto | operator<= (optional< T > const &lhs, optional< U > const &rhs) -> bool |
| Compares two optional objects, lhs and rhs.
|
|
template<typename T, typename U> |
constexpr auto | operator<= (optional< T > const &opt, U const &value) -> bool |
| Compares opt with a value. The values are compared (using the corresponding operator of T) only if opt contains a value. Otherwise, opt is considered less than value. If the corresponding two-way comparison expression between *opt and value is not well-formed, or if its result is not convertible to bool, the program is ill-formed.
|
|
template<typename T, typename U> |
constexpr auto | operator<= (T const &value, optional< U > const &opt) -> bool |
| Compares opt with a value. The values are compared (using the corresponding operator of T) only if opt contains a value. Otherwise, opt is considered less than value. If the corresponding two-way comparison expression between *opt and value is not well-formed, or if its result is not convertible to bool, the program is ill-formed.
|
|
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 T> |
constexpr auto | operator== (etl::nullopt_t, optional< T > const &opt) noexcept -> bool |
| Compares opt with a nullopt.
|
|
template<typename T, typename U> |
constexpr auto | operator== (optional< T > const &lhs, optional< U > const &rhs) -> bool |
| Compares two optional objects, lhs and rhs.
|
|
template<typename T> |
constexpr auto | operator== (optional< T > const &opt, etl::nullopt_t) noexcept -> bool |
| Compares opt with a nullopt.
|
|
template<typename T, typename U> |
constexpr auto | operator== (optional< T > const &opt, U const &value) -> bool |
| Compares opt with a value. The values are compared (using the corresponding operator of T) only if opt contains a value. Otherwise, opt is considered less than value. If the corresponding two-way comparison expression between *opt and value is not well-formed, or if its result is not convertible to bool, the program is ill-formed.
|
|
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 T, typename U> |
constexpr auto | operator> (optional< T > const &lhs, optional< U > const &rhs) -> bool |
| Compares two optional objects, lhs and rhs.
|
|
template<typename T, typename U> |
constexpr auto | operator> (optional< T > const &opt, U const &value) -> bool |
| Compares opt with a value. The values are compared (using the corresponding operator of T) only if opt contains a value. Otherwise, opt is considered less than value. If the corresponding two-way comparison expression between *opt and value is not well-formed, or if its result is not convertible to bool, the program is ill-formed.
|
|
template<typename T, typename U> |
constexpr auto | operator> (T const &value, optional< U > const &opt) -> bool |
| Compares opt with a value. The values are compared (using the corresponding operator of T) only if opt contains a value. Otherwise, opt is considered less than value. If the corresponding two-way comparison expression between *opt and value is not well-formed, or if its result is not convertible to bool, the program is ill-formed.
|
|
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<typename T, typename U> |
constexpr auto | operator>= (optional< T > const &lhs, optional< U > const &rhs) -> bool |
| Compares two optional objects, lhs and rhs.
|
|
template<typename T, typename U> |
constexpr auto | operator>= (optional< T > const &opt, U const &value) -> bool |
| Compares opt with a value. The values are compared (using the corresponding operator of T) only if opt contains a value. Otherwise, opt is considered less than value. If the corresponding two-way comparison expression between *opt and value is not well-formed, or if its result is not convertible to bool, the program is ill-formed.
|
|
template<typename T, typename U> |
constexpr auto | operator>= (T const &value, optional< U > const &opt) -> bool |
| Compares opt with a value. The values are compared (using the corresponding operator of T) only if opt contains a value. Otherwise, opt is considered less than value. If the corresponding two-way comparison expression between *opt and value is not well-formed, or if its result is not convertible to bool, the program is ill-formed.
|
|
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.
|
|
template<typename T, size_t N> |
constexpr auto | to_array (T(&&a)[N]) |
|
template<typename T, size_t N> |
constexpr auto | to_array (T(&a)[N]) -> array< remove_cv_t< T >, N > |
| Creates a array from the one dimensional built-in array a. The elements of the array are copy-initialized from the corresponding element of a. Copying or moving multidimensional built-in array is not supported.
|
|
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<size_t I, typename... Ts> |
constexpr auto | unchecked_get (variant< Ts... > &&v) -> auto && |
| Returns a reference to the object stored in the variant.
|
|
template<size_t I, typename... Ts> |
constexpr auto | unchecked_get (variant< Ts... > &v) -> auto & |
| Returns a reference to the object stored in the variant.
|
|
template<size_t I, typename... Ts> |
constexpr auto | unchecked_get (variant< Ts... > const &&v) -> auto const && |
| Returns a reference to the object stored in the variant.
|
|
template<size_t I, typename... Ts> |
constexpr auto | unchecked_get (variant< Ts... > const &v) -> auto const & |
| Returns a reference to the object stored in the variant.
|
|
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 |
|
template<typename F, typename... Vs> |
constexpr auto | visit (F &&f, Vs &&... vs) |
| Applies the visitor vis (Callable that can be called with any combination of types from variants) to the variants vars.
|
|
template<typename F, typename... Vs> |
constexpr auto | visit_with_index (F &&f, Vs &&... vs) |
| Applies the visitor vis (Callable that can be called with any combination of types from variants) to the variants vars.
|
|
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 |
| Checks if an element equivalent to value appears within the range [first, last) . For binary_search to succeed, the range [first, last) must be at least partially ordered with respect to value .
|
|
template<typename ForwardIt, typename T> |
constexpr auto | binary_search (ForwardIt first, ForwardIt last, T const &value) -> bool |
| Checks if an element equivalent to value appears within the range [first, last) . For binary_search to succeed, the range [first, last) must be at least partially ordered with respect to value .
|
|
|
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 |
| Searches for the first occurrence of the sequence of elements [sFirst, sLast) in the range [first, last) .
|
|
template<typename FwdIt1, typename FwdIt2> |
constexpr auto | search (FwdIt1 first, FwdIt1 last, FwdIt2 sFirst, FwdIt2 sLast) -> FwdIt1 |
| Searches for the first occurrence of the sequence of elements [sFirst, sLast) in the range [first, last) .
|
|
template<typename FwdIt, typename Searcher> |
constexpr auto | search (FwdIt first, FwdIt last, Searcher const &searcher) -> FwdIt |
| Searches for the first occurrence of the sequence of elements [sFirst, sLast) in the range [first, last) .
|
|
|
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 |
| Computes symmetric difference of two sorted ranges: the elements that are found in either of the ranges, but not in both of them are copied to the range beginning at destination. The resulting range is also sorted.
|
|
template<typename InputIt1, typename InputIt2, typename OutputIt> |
constexpr auto | set_symmetric_difference (InputIt1 first1, InputIt1 last1, InputIt2 first2, InputIt2 last2, OutputIt dest) -> OutputIt |
| Computes symmetric difference of two sorted ranges: the elements that are found in either of the ranges, but not in both of them are copied to the range beginning at destination. The resulting range is also sorted.
|
|
|
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 |
| Sorts the elements in the range [first, last) in non-descending order. The order of equal elements is not guaranteed to be preserved.
|
|
template<typename RandomIt> |
constexpr auto | sort (RandomIt first, RandomIt last) -> void |
| Sorts the elements in the range [first, last) in non-descending order. The order of equal elements is not guaranteed to be preserved.
|
|
|
template<typename RandomIt, typename Compare> |
constexpr auto | stable_sort (RandomIt first, RandomIt last, Compare comp) -> void |
| Sorts the elements in the range [first, last) in non-descending order. The order of equivalent elements is guaranteed to be preserved. Elements are compared using the given comparison function comp.
|
|
template<typename RandomIt> |
constexpr auto | stable_sort (RandomIt first, RandomIt last) -> void |
| Sorts the elements in the range [first, last) in non-descending order. The order of equivalent elements is guaranteed to be preserved. Elements are compared using the given comparison function comp.
|
|
|
template<typename InputIt, typename OutputIt, typename UnaryOp> |
constexpr auto | transform (InputIt first, InputIt last, OutputIt dest, UnaryOp op) -> OutputIt |
| Applies the given function to a range and stores the result in another range, beginning at dest. The unary operation op is applied to the range defined by [first, last) .
|
|
template<typename InputIt1, typename InputIt2, typename OutputIt, typename BinaryOp> |
constexpr auto | transform (InputIt1 first1, InputIt1 last1, InputIt2 first2, OutputIt dest, BinaryOp op) -> OutputIt |
| Applies the given function to a range and stores the result in another range, beginning at dest. The unary operation op is applied to the range defined by [first, last) .
|
|
|
template<typename ForwardIt, typename Predicate> |
constexpr auto | unique (ForwardIt first, ForwardIt last, Predicate pred) -> ForwardIt |
| Eliminates all except the first element from every consecutive group of equivalent elements from the range [first, last) and returns a past-the-end iterator for the new logical end of the range.
|
|
template<typename ForwardIt> |
constexpr auto | unique (ForwardIt first, ForwardIt last) -> ForwardIt |
| Eliminates all except the first element from every consecutive group of equivalent elements from the range [first, last) and returns a past-the-end iterator for the new logical end of the range.
|
|
|
template<typename InputIt, typename OutputIt, typename Predicate> |
constexpr auto | unique_copy (InputIt first, InputIt last, OutputIt destination, Predicate pred) -> OutputIt |
| Copies the elements from the range [first, last) , to another range beginning at d_first in such a way that there are no consecutive equal elements. Only the first element of each group of equal elements is copied.
|
|
template<typename InputIt, typename OutputIt> |
constexpr auto | unique_copy (InputIt first, InputIt last, OutputIt destination) -> OutputIt |
| Copies the elements from the range [first, last) , to another range beginning at d_first in such a way that there are no consecutive equal elements. Only the first element of each group of equal elements is copied.
|
|
|
template<typename ForwardIt, typename T, typename Compare> |
constexpr auto | upper_bound (ForwardIt first, ForwardIt last, T const &value, Compare comp) -> ForwardIt |
| Returns an iterator pointing to the first element in the range [first, last) that is greater than value , or last if no such element is found.
|
|
template<typename ForwardIt, typename T> |
constexpr auto | upper_bound (ForwardIt first, ForwardIt last, T const &value) -> ForwardIt |
| Returns an iterator pointing to the first element in the range [first, last) that is greater than value , or last if no such element is found.
|
|
|
constexpr auto | acos (float arg) noexcept -> float |
| Computes the principal value of the arc cosine of arg.
|
|
constexpr auto | acosf (float arg) noexcept -> float |
| Computes the principal value of the arc cosine of arg.
|
|
constexpr auto | acos (double arg) noexcept -> double |
| Computes the principal value of the arc cosine of arg.
|
|
constexpr auto | acos (long double arg) noexcept -> long double |
| Computes the principal value of the arc cosine of arg.
|
|
constexpr auto | acosl (long double arg) noexcept -> long double |
| Computes the principal value of the arc cosine of arg.
|
|
constexpr auto | acos (integral auto arg) noexcept -> double |
| Computes the principal value of the arc cosine of arg.
|
|
|
constexpr auto | acosh (float arg) noexcept -> float |
| Computes the inverse hyperbolic cosine of arg.
|
|
constexpr auto | acoshf (float arg) noexcept -> float |
| Computes the inverse hyperbolic cosine of arg.
|
|
constexpr auto | acosh (double arg) noexcept -> double |
| Computes the inverse hyperbolic cosine of arg.
|
|
constexpr auto | acosh (long double arg) noexcept -> long double |
| Computes the inverse hyperbolic cosine of arg.
|
|
constexpr auto | acoshl (long double arg) noexcept -> long double |
| Computes the inverse hyperbolic cosine of arg.
|
|
constexpr auto | acosh (integral auto arg) noexcept -> double |
| Computes the inverse hyperbolic cosine of arg.
|
|
|
constexpr auto | asin (float arg) noexcept -> float |
| Computes the principal value of the arc sine of arg.
|
|
constexpr auto | asinf (float arg) noexcept -> float |
| Computes the principal value of the arc sine of arg.
|
|
constexpr auto | asin (double arg) noexcept -> double |
| Computes the principal value of the arc sine of arg.
|
|
constexpr auto | asin (long double arg) noexcept -> long double |
| Computes the principal value of the arc sine of arg.
|
|
constexpr auto | asinl (long double arg) noexcept -> long double |
| Computes the principal value of the arc sine of arg.
|
|
constexpr auto | asin (integral auto arg) noexcept -> double |
| Computes the principal value of the arc sine of arg.
|
|
|
constexpr auto | asinh (float arg) noexcept -> float |
| Computes the inverse hyperbolic sine of arg.
|
|
constexpr auto | asinhf (float arg) noexcept -> float |
| Computes the inverse hyperbolic sine of arg.
|
|
constexpr auto | asinh (double arg) noexcept -> double |
| Computes the inverse hyperbolic sine of arg.
|
|
constexpr auto | asinh (long double arg) noexcept -> long double |
| Computes the inverse hyperbolic sine of arg.
|
|
constexpr auto | asinhl (long double arg) noexcept -> long double |
| Computes the inverse hyperbolic sine of arg.
|
|
constexpr auto | asinh (integral auto arg) noexcept -> double |
| Computes the inverse hyperbolic sine of arg.
|
|
|
constexpr auto | atan (float arg) noexcept -> float |
| Computes the principal value of the arc tangent of arg.
|
|
constexpr auto | atanf (float arg) noexcept -> float |
| Computes the principal value of the arc tangent of arg.
|
|
constexpr auto | atan (double arg) noexcept -> double |
| Computes the principal value of the arc tangent of arg.
|
|
constexpr auto | atan (long double arg) noexcept -> long double |
| Computes the principal value of the arc tangent of arg.
|
|
constexpr auto | atanl (long double arg) noexcept -> long double |
| Computes the principal value of the arc tangent of arg.
|
|
constexpr auto | atan (integral auto arg) noexcept -> double |
| Computes the principal value of the arc tangent of arg.
|
|
|
constexpr auto | atan2 (float x, float y) noexcept -> float |
| Computes the arc tangent of y/x using the signs of arguments to determine the correct quadrant.
|
|
constexpr auto | atan2f (float x, float y) noexcept -> float |
| Computes the arc tangent of y/x using the signs of arguments to determine the correct quadrant.
|
|
constexpr auto | atan2 (double x, double y) noexcept -> double |
| Computes the arc tangent of y/x using the signs of arguments to determine the correct quadrant.
|
|
constexpr auto | atan2 (long double x, long double y) noexcept -> long double |
| Computes the arc tangent of y/x using the signs of arguments to determine the correct quadrant.
|
|
constexpr auto | atan2l (long double x, long double y) noexcept -> long double |
| Computes the arc tangent of y/x using the signs of arguments to determine the correct quadrant.
|
|
|
constexpr auto | atanh (float arg) noexcept -> float |
| Computes the inverse hyperbolic tangent of arg.
|
|
constexpr auto | atanhf (float arg) noexcept -> float |
| Computes the inverse hyperbolic tangent of arg.
|
|
constexpr auto | atanh (double arg) noexcept -> double |
| Computes the inverse hyperbolic tangent of arg.
|
|
constexpr auto | atanh (long double arg) noexcept -> long double |
| Computes the inverse hyperbolic tangent of arg.
|
|
constexpr auto | atanhl (long double arg) noexcept -> long double |
| Computes the inverse hyperbolic tangent of arg.
|
|
constexpr auto | atanh (integral auto arg) noexcept -> double |
| Computes the inverse hyperbolic tangent of arg.
|
|
|
constexpr auto | beta (double x, double y) noexcept -> double |
| Computes the beta function of x and y.
|
|
constexpr auto | betaf (float x, float y) noexcept -> float |
| Computes the beta function of x and y.
|
|
constexpr auto | betal (long double x, long double y) noexcept -> long double |
| Computes the beta function of x and y.
|
|
|
constexpr auto | ceil (float arg) noexcept -> float |
| Computes the smallest integer value not less than arg.
|
|
constexpr auto | ceilf (float arg) noexcept -> float |
| Computes the smallest integer value not less than arg.
|
|
constexpr auto | ceil (double arg) noexcept -> double |
| Computes the smallest integer value not less than arg.
|
|
constexpr auto | ceil (long double arg) noexcept -> long double |
| Computes the smallest integer value not less than arg.
|
|
constexpr auto | ceill (long double arg) noexcept -> long double |
| Computes the smallest integer value not less than arg.
|
|
constexpr auto | ceil (integral auto arg) noexcept -> double |
| Computes the smallest integer value not less than arg.
|
|
|
constexpr auto | copysign (float mag, float sgn) -> float |
| Composes a floating point value with the magnitude of mag and the sign of sgn.
|
|
constexpr auto | copysignf (float mag, float sgn) -> float |
| Composes a floating point value with the magnitude of mag and the sign of sgn.
|
|
constexpr auto | copysign (double mag, double sgn) -> double |
| Composes a floating point value with the magnitude of mag and the sign of sgn.
|
|
constexpr auto | copysign (long double mag, long double sgn) -> long double |
| Composes a floating point value with the magnitude of mag and the sign of sgn.
|
|
constexpr auto | copysignl (long double mag, long double sgn) -> long double |
| Composes a floating point value with the magnitude of mag and the sign of sgn.
|
|
|
constexpr auto | cos (float arg) noexcept -> float |
| Computes the cosine of arg (measured in radians).
|
|
constexpr auto | cosf (float arg) noexcept -> float |
| Computes the cosine of arg (measured in radians).
|
|
constexpr auto | cos (double arg) noexcept -> double |
| Computes the cosine of arg (measured in radians).
|
|
constexpr auto | cos (long double arg) noexcept -> long double |
| Computes the cosine of arg (measured in radians).
|
|
constexpr auto | cosl (long double arg) noexcept -> long double |
| Computes the cosine of arg (measured in radians).
|
|
constexpr auto | cos (integral auto arg) noexcept -> double |
| Computes the cosine of arg (measured in radians).
|
|
|
constexpr auto | cosh (float arg) noexcept -> float |
| Computes the hyperbolic cosine of arg.
|
|
constexpr auto | coshf (float arg) noexcept -> float |
| Computes the hyperbolic cosine of arg.
|
|
constexpr auto | cosh (double arg) noexcept -> double |
| Computes the hyperbolic cosine of arg.
|
|
constexpr auto | cosh (long double arg) noexcept -> long double |
| Computes the hyperbolic cosine of arg.
|
|
constexpr auto | coshl (long double arg) noexcept -> long double |
| Computes the hyperbolic cosine of arg.
|
|
constexpr auto | cosh (integral auto arg) noexcept -> double |
| Computes the hyperbolic cosine of arg.
|
|
|
constexpr auto | erf (float arg) noexcept -> float |
| Computes the error function of arg.
|
|
constexpr auto | erff (float arg) noexcept -> float |
| Computes the error function of arg.
|
|
constexpr auto | erf (double arg) noexcept -> double |
| Computes the error function of arg.
|
|
constexpr auto | erf (long double arg) noexcept -> long double |
| Computes the error function of arg.
|
|
constexpr auto | erfl (long double arg) noexcept -> long double |
| Computes the error function of arg.
|
|
constexpr auto | erf (integral auto arg) noexcept -> double |
| Computes the error function of arg.
|
|
|
constexpr auto | exp (float arg) noexcept -> float |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | expf (float arg) noexcept -> float |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | exp (double arg) noexcept -> double |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | exp (long double arg) noexcept -> long double |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | expl (long double arg) noexcept -> long double |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | exp (integral auto arg) noexcept -> double |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
|
constexpr auto | fdim (float x, float y) noexcept -> float |
| Returns the positive difference between x and y, that is, if x>y, returns x-y, otherwise (if x≤y), returns +0.
|
|
constexpr auto | fdimf (float x, float y) noexcept -> float |
| Returns the positive difference between x and y, that is, if x>y, returns x-y, otherwise (if x≤y), returns +0.
|
|
constexpr auto | fdim (double x, double y) noexcept -> double |
| Returns the positive difference between x and y, that is, if x>y, returns x-y, otherwise (if x≤y), returns +0.
|
|
constexpr auto | fdim (long double x, long double y) noexcept -> long double |
| Returns the positive difference between x and y, that is, if x>y, returns x-y, otherwise (if x≤y), returns +0.
|
|
constexpr auto | fdiml (long double x, long double y) noexcept -> long double |
| Returns the positive difference between x and y, that is, if x>y, returns x-y, otherwise (if x≤y), returns +0.
|
|
|
constexpr auto | floor (float arg) noexcept -> float |
| Computes the largest integer value not greater than arg.
|
|
constexpr auto | floorf (float arg) noexcept -> float |
| Computes the largest integer value not greater than arg.
|
|
constexpr auto | floor (double arg) noexcept -> double |
| Computes the largest integer value not greater than arg.
|
|
constexpr auto | floor (long double arg) noexcept -> long double |
| Computes the largest integer value not greater than arg.
|
|
constexpr auto | floorl (long double arg) noexcept -> long double |
| Computes the largest integer value not greater than arg.
|
|
constexpr auto | floor (integral auto arg) noexcept -> double |
| Computes the largest integer value not greater than arg.
|
|
|
constexpr auto | fma (float x, float y, float z) noexcept -> float |
| Computes (x*y) + z as if to infinite precision and rounded only once to fit the result type.
|
|
constexpr auto | fmaf (float x, float y, float z) noexcept -> float |
| Computes (x*y) + z as if to infinite precision and rounded only once to fit the result type.
|
|
constexpr auto | fma (double x, double y, double z) noexcept -> double |
| Computes (x*y) + z as if to infinite precision and rounded only once to fit the result type.
|
|
constexpr auto | fma (long double x, long double y, long double z) noexcept -> long double |
| Computes (x*y) + z as if to infinite precision and rounded only once to fit the result type.
|
|
constexpr auto | fmal (long double x, long double y, long double z) noexcept -> long double |
| Computes (x*y) + z as if to infinite precision and rounded only once to fit the result type.
|
|
|
constexpr auto | fmax (float x, float y) noexcept -> float |
| Returns the larger of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
constexpr auto | fmaxf (float x, float y) noexcept -> float |
| Returns the larger of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
constexpr auto | fmax (double x, double y) noexcept -> double |
| Returns the larger of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
constexpr auto | fmax (long double x, long double y) noexcept -> long double |
| Returns the larger of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
constexpr auto | fmaxl (long double x, long double y) noexcept -> long double |
| Returns the larger of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
|
constexpr auto | fmin (float x, float y) noexcept -> float |
| Returns the smaller of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
constexpr auto | fminf (float x, float y) noexcept -> float |
| Returns the smaller of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
constexpr auto | fmin (double x, double y) noexcept -> double |
| Returns the smaller of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
constexpr auto | fmin (long double x, long double y) noexcept -> long double |
| Returns the smaller of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
constexpr auto | fminl (long double x, long double y) noexcept -> long double |
| Returns the smaller of two floating point arguments, treating NaNs as missing data (between a NaN and a numeric value, the numeric value is chosen)
|
|
|
constexpr auto | fmod (float x, float y) noexcept -> float |
| Computes the floating-point remainder of the division operation x/y.
|
|
constexpr auto | fmodf (float x, float y) noexcept -> float |
| Computes the floating-point remainder of the division operation x/y.
|
|
constexpr auto | fmod (double x, double y) noexcept -> double |
| Computes the floating-point remainder of the division operation x/y.
|
|
constexpr auto | fmod (long double x, long double y) noexcept -> long double |
| Computes the floating-point remainder of the division operation x/y.
|
|
constexpr auto | fmodl (long double x, long double y) noexcept -> long double |
| Computes the floating-point remainder of the division operation x/y.
|
|
|
constexpr auto | hypot (float x, float y) noexcept -> float |
| Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation.
|
|
constexpr auto | hypotf (float x, float y) noexcept -> float |
| Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation.
|
|
constexpr auto | hypot (double x, double y) noexcept -> double |
| Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation.
|
|
constexpr auto | hypot (long double x, long double y) noexcept -> long double |
| Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation.
|
|
constexpr auto | hypotl (long double x, long double y) noexcept -> long double |
| Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation.
|
|
constexpr auto | hypot (float x, float y, float z) noexcept -> float |
| Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation.
|
|
constexpr auto | hypot (double x, double y, double z) noexcept -> double |
| Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation.
|
|
constexpr auto | hypot (long double x, long double y, long double z) noexcept -> long double |
| Computes the square root of the sum of the squares of x and y, without undue overflow or underflow at intermediate stages of the computation.
|
|
|
constexpr auto | log (float v) noexcept -> float |
| Computes the natural (base e) logarithm of arg.
|
|
constexpr auto | logf (float v) noexcept -> float |
| Computes the natural (base e) logarithm of arg.
|
|
constexpr auto | log (double v) noexcept -> double |
| Computes the natural (base e) logarithm of arg.
|
|
constexpr auto | log (long double v) noexcept -> long double |
| Computes the natural (base e) logarithm of arg.
|
|
constexpr auto | logl (long double v) noexcept -> long double |
| Computes the natural (base e) logarithm of arg.
|
|
constexpr auto | log (integral auto arg) noexcept -> double |
| Computes the natural (base e) logarithm of arg.
|
|
|
constexpr auto | log10 (float arg) noexcept -> float |
| Computes the binary (base-10) logarithm of arg.
|
|
constexpr auto | log10f (float arg) noexcept -> float |
| Computes the binary (base-10) logarithm of arg.
|
|
constexpr auto | log10 (double arg) noexcept -> double |
| Computes the binary (base-10) logarithm of arg.
|
|
constexpr auto | log10 (long double arg) noexcept -> long double |
| Computes the binary (base-10) logarithm of arg.
|
|
constexpr auto | log10l (long double arg) noexcept -> long double |
| Computes the binary (base-10) logarithm of arg.
|
|
constexpr auto | log10 (integral auto arg) noexcept -> double |
| Computes the binary (base-10) logarithm of arg.
|
|
|
constexpr auto | log1p (float v) noexcept -> float |
| Computes the natural (base e) logarithm of 1+arg. This function is more precise than the expression etl::log(1+arg) if arg is close to zero.
|
|
constexpr auto | log1pf (float v) noexcept -> float |
| Computes the natural (base e) logarithm of 1+arg. This function is more precise than the expression etl::log(1+arg) if arg is close to zero.
|
|
constexpr auto | log1p (double v) noexcept -> double |
| Computes the natural (base e) logarithm of 1+arg. This function is more precise than the expression etl::log(1+arg) if arg is close to zero.
|
|
constexpr auto | log1p (long double v) noexcept -> long double |
| Computes the natural (base e) logarithm of 1+arg. This function is more precise than the expression etl::log(1+arg) if arg is close to zero.
|
|
constexpr auto | log1pl (long double v) noexcept -> long double |
| Computes the natural (base e) logarithm of 1+arg. This function is more precise than the expression etl::log(1+arg) if arg is close to zero.
|
|
constexpr auto | log1p (integral auto arg) noexcept -> double |
| Computes the natural (base e) logarithm of 1+arg. This function is more precise than the expression etl::log(1+arg) if arg is close to zero.
|
|
|
constexpr auto | log2 (float arg) noexcept -> float |
| Computes the binary (base-2) logarithm of arg.
|
|
constexpr auto | log2f (float arg) noexcept -> float |
| Computes the binary (base-2) logarithm of arg.
|
|
constexpr auto | log2 (double arg) noexcept -> double |
| Computes the binary (base-2) logarithm of arg.
|
|
constexpr auto | log2 (long double arg) noexcept -> long double |
| Computes the binary (base-2) logarithm of arg.
|
|
constexpr auto | log2l (long double arg) noexcept -> long double |
| Computes the binary (base-2) logarithm of arg.
|
|
constexpr auto | log2 (integral auto arg) noexcept -> double |
| Computes the binary (base-2) logarithm of arg.
|
|
|
constexpr auto | nanf (char const *arg) noexcept -> float |
| Converts the implementation-defined character string arg into the corresponding quiet NaN value.
|
|
constexpr auto | nan (char const *arg) noexcept -> double |
| Converts the implementation-defined character string arg into the corresponding quiet NaN value.
|
|
constexpr auto | nanl (char const *arg) noexcept -> long double |
| Converts the implementation-defined character string arg into the corresponding quiet NaN value.
|
|
|
constexpr auto | nextafter (float from, float to) noexcept -> float |
| Returns the next representable value of from in the direction of to. If from equals to, to is returned.
|
|
constexpr auto | nextafterf (float from, float to) noexcept -> float |
| Returns the next representable value of from in the direction of to. If from equals to, to is returned.
|
|
constexpr auto | nextafter (double from, double to) noexcept -> double |
| Returns the next representable value of from in the direction of to. If from equals to, to is returned.
|
|
|
constexpr auto | round (float arg) noexcept -> float |
| Computes the nearest integer value to arg (in floating-point format), rounding halfway cases away from zero, regardless of the current rounding mode.
|
|
constexpr auto | roundf (float arg) noexcept -> float |
| Computes the nearest integer value to arg (in floating-point format), rounding halfway cases away from zero, regardless of the current rounding mode.
|
|
constexpr auto | round (double arg) noexcept -> double |
| Computes the nearest integer value to arg (in floating-point format), rounding halfway cases away from zero, regardless of the current rounding mode.
|
|
constexpr auto | round (long double arg) noexcept -> long double |
| Computes the nearest integer value to arg (in floating-point format), rounding halfway cases away from zero, regardless of the current rounding mode.
|
|
constexpr auto | roundl (long double arg) noexcept -> long double |
| Computes the nearest integer value to arg (in floating-point format), rounding halfway cases away from zero, regardless of the current rounding mode.
|
|
constexpr auto | round (integral auto arg) noexcept -> double |
| Computes the nearest integer value to arg (in floating-point format), rounding halfway cases away from zero, regardless of the current rounding mode.
|
|
|
constexpr auto | sin (float arg) noexcept -> float |
| Computes the sine of arg (measured in radians).
|
|
constexpr auto | sinf (float arg) noexcept -> float |
| Computes the sine of arg (measured in radians).
|
|
constexpr auto | sin (double arg) noexcept -> double |
| Computes the sine of arg (measured in radians).
|
|
constexpr auto | sin (long double arg) noexcept -> long double |
| Computes the sine of arg (measured in radians).
|
|
constexpr auto | sinl (long double arg) noexcept -> long double |
| Computes the sine of arg (measured in radians).
|
|
constexpr auto | sin (integral auto arg) noexcept -> double |
| Computes the sine of arg (measured in radians).
|
|
|
constexpr auto | tan (float arg) noexcept -> float |
| Computes the tangent of arg (measured in radians).
|
|
constexpr auto | tanf (float arg) noexcept -> float |
| Computes the tangent of arg (measured in radians).
|
|
constexpr auto | tan (double arg) noexcept -> double |
| Computes the tangent of arg (measured in radians).
|
|
constexpr auto | tan (long double arg) noexcept -> long double |
| Computes the tangent of arg (measured in radians).
|
|
constexpr auto | tanl (long double arg) noexcept -> long double |
| Computes the tangent of arg (measured in radians).
|
|
constexpr auto | tan (integral auto arg) noexcept -> double |
| Computes the tangent of arg (measured in radians).
|
|
|
constexpr auto | tanh (float arg) noexcept -> float |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | tanhf (float arg) noexcept -> float |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | tanh (double arg) noexcept -> double |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | tanh (long double arg) noexcept -> long double |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | tanhl (long double arg) noexcept -> long double |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
constexpr auto | tanh (integral auto arg) noexcept -> double |
| Computes e (Euler's number, 2.7182...) raised to the given power arg.
|
|
|
constexpr auto | tgamma (float arg) noexcept -> float |
| Computes the gamma function of arg.
|
|
constexpr auto | tgammaf (float arg) noexcept -> float |
| Computes the gamma function of arg.
|
|
constexpr auto | tgamma (double arg) noexcept -> double |
| Computes the gamma function of arg.
|
|
constexpr auto | tgamma (long double arg) noexcept -> long double |
| Computes the gamma function of arg.
|
|
constexpr auto | tgammal (long double arg) noexcept -> long double |
| Computes the gamma function of arg.
|
|
constexpr auto | tgamma (integral auto arg) noexcept -> double |
| Computes the gamma function of arg.
|
|
|
constexpr auto | trunc (float arg) noexcept -> float |
| Computes the nearest integer not greater in magnitude than arg.
|
|
constexpr auto | truncf (float arg) noexcept -> float |
| Computes the nearest integer not greater in magnitude than arg.
|
|
constexpr auto | trunc (double arg) noexcept -> double |
| Computes the nearest integer not greater in magnitude than arg.
|
|
constexpr auto | trunc (long double arg) noexcept -> long double |
| Computes the nearest integer not greater in magnitude than arg.
|
|
constexpr auto | truncl (long double arg) noexcept -> long double |
| Computes the nearest integer not greater in magnitude than arg.
|
|
constexpr auto | trunc (integral auto arg) noexcept -> double |
| Computes the nearest integer not greater in magnitude than arg.
|
|
|
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 * |
| Finds the first occurrence of the character static_cast<char>(ch) in the byte string pointed to by str.
|
|
constexpr auto | strchr (char *str, int ch) -> char * |
| Finds the first occurrence of the character static_cast<char>(ch) in the byte string pointed to by str.
|
|
|
constexpr auto | strpbrk (char const *dest, char const *breakset) noexcept -> char const * |
| Scans the null-terminated byte string pointed to by dest for any character from the null-terminated byte string pointed to by breakset, and returns a pointer to that character.
|
|
constexpr auto | strpbrk (char *dest, char *breakset) noexcept -> char * |
| Scans the null-terminated byte string pointed to by dest for any character from the null-terminated byte string pointed to by breakset, and returns a pointer to that character.
|
|
|
constexpr auto | strrchr (char const *str, int ch) noexcept -> char const * |
| Finds the last occurrence of the character static_cast<char>(ch) in the byte string pointed to by str.
|
|
constexpr auto | strrchr (char *str, int ch) noexcept -> char * |
| Finds the last occurrence of the character static_cast<char>(ch) in the byte string pointed to by str.
|
|
|
constexpr auto | strstr (char *haystack, char *needle) noexcept -> char * |
| Finds the first occurrence of the byte string needle in the byte string pointed to by haystack. The terminating null characters are not compared.
|
|
constexpr auto | strstr (char const *haystack, char const *needle) noexcept -> char const * |
| Finds the first occurrence of the byte string needle in the byte string pointed to by haystack. The terminating null characters are not compared.
|
|