Backports from C++17.
A listing of some of the features backported:
- From the language proper:
std::byte
(see also to_byte()
) .
- From
<algorithm>
: clamp()
.
- From
<cstddef>
: to_integral()
.
- From
<functional>
: not_fn()
, invoke()
(down to C++11 only).
- From
<iterator>
: container data globals data()
, size()
, empty()
.
- From
<numeric>
: gcd()
, lcm()
.
- From
<tuple>
: make_from_tuple()
, apply()
.
- From
<type_traits>
:
make_void ,
void_t , bool_constant
, etc.
- From
<utility>
: as_const()
, in_place_type
, in_place_index
etc.
See also: C++14 Backports C++20 Backports .
- Class bool_constant< B >
- Implementation of
bool_constant
(bool specialization of integral_constant
).
- Class byte
- Standard declaration of a raw data, non-integral byte type.
- Member cxxomfort::cxxostd::apply (F f, Tuple &t)
- Invokes a callable f using the elements of the tuple t as arguments.
- Member cxxomfort::cxxostd::as_ptr_const (T *const t) noexcept
- "Type Utilities" as_const
- Member cxxomfort::cxxostd::clamp (T const &val, T const &lo, T const &hi, Compare comp)
- Clamps a value val within a range
- Member cxxomfort::cxxostd::count (It ini, It fin, T const &tv)
- Count the number of elements matching a given value
- Member cxxomfort::cxxostd::count_if (It ini, It fin, Pred p)
- Count the number of elements matching a predicate
- Member cxxomfort::cxxostd::data (C &container) -> decltype(container.data())
- Invoked
c.data()
or a similar construct for contiguous-storage sequences.
- Member cxxomfort::cxxostd::data (C const &container)
- "Iterators" empty
- Member cxxomfort::cxxostd::for_each_n (II first, Size n, UnaryFunction f)
- Invoke a function over the elements of a sequence.
- Member cxxomfort::cxxostd::gcd (Num1 n1, Num2 n2) CXXO_NOEXCEPT
- "Numeric" gcd
- Member cxxomfort::cxxostd::invoke (F &&callable, Args &&... args)
- Invokes callables via
callable( args... )
, accounting for eg.: member-pointer callables.
- Member cxxomfort::cxxostd::lcm (Num1 n1, Num2 n2) CXXO_NOEXCEPT
- "Numeric" lcm
- Member cxxomfort::cxxostd::make_from_tuple (std::tuple< TupleArgs... > &&Tuple)
- Constructs an object of type T using the tuple's elements for the constructor.
- Member cxxomfort::cxxostd::not_fn (Fn &&f)
not_fn()
from Fundamentals v2: a generic functor negator.
- Member cxxomfort::cxxostd::size (C &c)
- Invokes
c.size()
or an equivalent construct for a sequence.
- Member cxxomfort::cxxostd::timespec_get (struct timespec *ts, int base)
- Fetches timespec information from the system clock.
- Member cxxomfort::cxxostd::to_integer (byte b)
- Converts a
byte
to an integral value.
- Class make_void< Arglist >
- Constructs
void
from an instantiation.
- Class timespec
- timespec, from POSIX.
- Class void_t
- void type