Modules
- module C++20 C++ 20 language and library features backported to C++17.
- module Constants Compile-time constant values (Pi, et cetera.).
-
module Core Small, generally-useful functions and types.
- module Metafunctions and type traits Type traits and metaprogramming utilities.
- module Hashing Utilities for generating (non-cryptographic) hashes.
- module Iterators Utilities for working with iterators.
-
module Math Math functions and types.
- module abs() Constexpr-friendly alternatives to std::abs.
- module acos() Constexpr-friendly alternatives to std::acos.
- module approx_equal() Checks if floating-point values are approximately equal.
- module approx_zero() Checks if floating-point values are approximately equal to zero.
- module asin() Constexpr-friendly alternatives to std::asin.
- module atan() Constexpr-friendly alternatives to std::atan.
- module atan2() Constexpr-friendly alternatives to std::atan2.
- module ceil() Constexpr-friendly alternatives to std::ceil.
- module consteval_sqrt() std::sqrt alternatives that are always available at compile time.
- module cos() Constexpr-friendly alternatives to std::cos.
- module degenerate() Retuurns true if a math class type is in a degenerate state.
- module floor() Constexpr-friendly alternatives to std::floor.
- module infinity_or_nan() Checks for infinities and not-a-numbers (NaN).
- module lerp() Linear interpolations al a C++20's std::lerp.
- module normalize_angle() Normalizes angles, wrapping their values to the range
[0.0, 2 * pi)
. - module normalize_angle_signed() Normalizes angles, wrapping their values to the range
[-pi, pi)
. - module sin() Constexpr-friendly alternatives to std::sin.
- module sqrt() Constexpr-friendly alternatives to std::sqrt.
- module tan() Constexpr-friendly alternatives to std::tan.
- module Memory management Utilities for allocating, destroying and manipulating memory.
- module Preprocessor Compiler feature detection, attributes, string-makers, etc.
-
module Strings Utilities to simplify working with strings.
-
module Code units Utilities for manipulating individual code units ('characters').
- module is_ascii_code_point()
- module is_ascii_hyphen()
- module is_ascii_letter()
- module is_ascii_lowercase()
- module is_ascii_number()
- module is_ascii_uppercase()
- module is_ascii_whitespace()
- module is_code_point()
- module is_code_point_boundary()
- module is_combining_mark()
- module is_decimal_digit()
- module is_hexadecimal_digit()
- module is_hyphen()
- module is_letter()
- module is_lowercase()
- module is_non_ascii_code_point()
- module is_non_ascii_hyphen()
- module is_non_ascii_letter()
- module is_non_ascii_lowercase()
- module is_non_ascii_number()
- module is_non_ascii_uppercase()
- module is_non_ascii_whitespace()
- module is_not_code_point()
- module is_not_hyphen()
- module is_not_letter()
- module is_not_lowercase()
- module is_not_number()
- module is_not_uppercase()
- module is_not_whitespace()
- module is_number()
- module is_octal_digit()
- module is_uppercase()
- module is_whitespace()
- module transcode() Transcodes a UTF string into another UTF encoding.
- module trim() Trims whitespace from both ends of a UTF string.
- module trim_left() Trims whitespace from the left end of a UTF string.
- module trim_right() Trims whitespace from the right end of a UTF string.
-
module Code units Utilities for manipulating individual code units ('characters').