cxxomfort
rel.20210622
Simple backports for C++ - http://ryan.gulix.cl/fossil.cgi/cxxomfort/
|
Fixes for implementation issues in std. More...
Classes | |
struct | integral_limits |
An extension to numeric_limits that deals specifically with integer-like types. More... | |
struct | is_contiguous_access_iterator |
Tags an iterator as a contiguous access type iterator. More... | |
struct | malloc_deleter |
Deleter operator that uses free() for malloc -reserved blocks. More... | |
struct | shuffle_order_engine |
Forwarder for std::shuffle_order_engine . More... | |
Typedefs | |
typedef shuffle_order_engine< minstd_rand, 256 > | knuth_b |
Forwarder for the std::knuth_b specialization of shuffle_order_engine . | |
Functions | |
template<typename Integral > | |
to_byte (Integral i) CXXO_NOEXCEPTNOTHROW | |
Creates a std::byte value given a numerical octet value. More... | |
template<typename T > | |
auto | cdata (C const &container) -> decltype(container.data()) |
Returns container.data() as a const-pointer for a given container. More... | |
template<typename It , typename = typename std::enable_if<std::is_pointer<It>::value, bool>> | |
constexpr It | static_next (It const p) noexcept |
Given a compile-time const (or constexpr ) iterator, returns the iterator to the next position. | |
template<typename It , typename = typename std::enable_if<std::is_pointer<It>::value, bool>> | |
constexpr It | static_prev (It const p) noexcept |
Given a compile-time const (or constexpr ) iterator, returns the iterator to the previous position. | |
template<typename T > | |
bool | to_bool (std::shared_ptr< T > const &p) noexcept |
template<typename T > | |
bool | to_bool (std::unique_ptr< T > const &p) noexcept |
static int | randmo (int mo) CXXO_NOEXCEPTNOTHROW |
Invokes rand and rids of some of the bias from the modulo. More... | |
static CXXO_CONSTEXPR errc | to_errc (int E) |
Creates a value of type errc given a numeric error code. | |
Fixes for implementation issues in std.
Namespace that holds fixes and alternative implementations or names for stuff in C++ std that can not be modified or reimplemented.
See "Implementation Fixes" for more details.