rhalbersma / xstd

Extensions to the C++ Standard Library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Extensions to the C++ Standard Library

Language Standard License Lines of Code

Header Additions Description Reference
<xstd/array.hpp> array_from_types Create an array from a type list none
<xstd/cstddef.hpp> operator "" _uz User-defined literals for size_t p0330r8 (C++23)
<xstd/cstdlib.hpp> abs
div
euclidean_div
floored_div
sign
constexpr std::abs(int)
constexpr std::div(int, int)
Euclidean division
Floored division
constexpr boost::math::sign
p0533r9 (C++23)
p0533r9 (C++23)
Euclidean division
Floored division
Boost.Math
<xstd/type_traits.hpp> is_integral_constant
is_specialization_of
tagged_empty
optional_type
Is a type an integral_constant?
Is a type a class template specialization?
A tagged empty type
An optional type
p2098r1
none
none
none
<xstd/utility.hpp> to_underlying Convert an enum to its underlying type p1682r3 (C++23)

Requirements

These header-only libraries are continuously being tested with the following conforming C++20 compilers:

Platform Compiler Versions Build
Linux GCC 11, 12, 13-SVN CI currently being ported to GitHub Actions
Linux Clang 15, 16, 17-SVN CI currently being ported to GitHub Actions
Windows Visual Studio 2019, 2022 CI currently being ported to GitHub Actions

License

Copyright Rein Halbersma 2014-2023. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

About

Extensions to the C++ Standard Library

License:Boost Software License 1.0


Languages

Language:C++ 82.0%Language:CMake 18.0%