carb::cpp
-
namespace cpp
Namespace for C++ standard library types after C++14 implemented and usable by C++14 compilers.
Classes
carb::cpp::barrier: Implements a C++20 barrier in C++14 semantics.
carb::cpp::basic_string_view: The class template basic_string_view describes an object that can refer to a constant contiguous sequence of elements with the first element of the sequence at position zero.
carb::cpp::counting_semaphore: C++20-compatible counting semaphore class.
carb::cpp::latch: Implements a C++20 latch in C++14 semantics.
carb::cpp::span: An object that refers to a contiguous sequence of objects.
Enumerations
carb::cpp::byte: A byte is a distinct type that implements the concept of byte as specified in the C++ language definition. Like
char
andunsigned char
, it can be used to access raw memory occupied by other objects, but unlike those types it is not a character type and is not an arithmetic type. A byte is only a collection of bits, and only bitwise operators are defined for it.carb::cpp::endian: Indicates the endianness of all scalar types for the current system.
Functions
carb::cpp::addressof: Get the address of arg , even if
operator&
is overloaded. This is generally only useful in memory management functionsto_address
is almost always preferable.carb::cpp::addressof: Taking the address of a
const
rvalue is never correct.carb::cpp::as_bytes: Obtains a view ot the object representation of the elements of the given span.
carb::cpp::as_writable_bytes: Obtains a writable view to the object representation of the elements of the given span.
carb::cpp::bit_cast: Re-interprets the bits
src
as typeTo
.carb::cpp::bit_ceil: Finds the smallest integral power of two not less than the given value.
carb::cpp::bit_floor: Finds the largest integral power of two not greater than the given value.
carb::cpp::construct_at: Construct a
T
in place using the provided args .carb::cpp::countl_one: Returns the number of consecutive 1 bits in the value of val, starting from the most significant bit ("left").
carb::cpp::countl_one_constexpr: Returns the number of consecutive 1 bits in the value of val, starting from the most significant bit ("left").
carb::cpp::countl_zero: Returns the number of consecutive 0 bits in the value of val, starting from the most significant bit ("left").
carb::cpp::countl_zero_constexpr: Returns the number of consecutive 0 bits in the value of val, starting from the most significant bit ("left").
carb::cpp::countr_one: Returns the number of consecutive 1 bits in the value of val, starting from the least significant bit ("right").
carb::cpp::countr_one_constexpr: Returns the number of consecutive 1 bits in the value of val, starting from the least significant bit ("right").
carb::cpp::countr_zero: Returns the number of consecutive 0 bits in the value of val, starting from the least significant bit ("right").
carb::cpp::countr_zero_constexpr: Returns the number of consecutive 0 bits in the value of val, starting from the least significant bit ("right").
carb::cpp::data: Returns a pointer to the block of memory containing the elements of the range.
carb::cpp::data: Returns a pointer to the block of memory containing the elements of the range.
carb::cpp::data: Returns a pointer to the block of memory containing the elements of the range.
carb::cpp::data: Returns a pointer to the block of memory containing the elements of the range.
carb::cpp::destroy_at: Call the destructor of all array elements.
carb::cpp::destroy_at: Call the destructor of p .
carb::cpp::gcd: Computes the greatest common divisor of two integers.
carb::cpp::has_single_bit: Checks if a given value is an integral power of 2.
carb::cpp::invoke: Invoke the function f with the given args pack.
carb::cpp::invoke_r: Invoke the function with the given arguments with the explicit return type
R
. This follows the same rules as carb::cpp::invoke() .carb::cpp::operator!=: Lexicographically compare two string views.
carb::cpp::operator!=: Lexicographically compare two string views.
carb::cpp::operator!=: Lexicographically compare two string views.
carb::cpp::operator!=: Lexicographically compare two string views.
carb::cpp::operator!=: Lexicographically compare two string views.
carb::cpp::operator!=: Lexicographically compare two string views.
carb::cpp::operator!=: Lexicographically compare two string views.
carb::cpp::operator!=: Lexicographically compare two string views.
carb::cpp::operator!=: Lexicographically compare two string views.
carb::cpp::operator””_sv: Creates a string view of a character array literal. noexcept
carb::cpp::operator””_sv: Creates a string view of a character array literal.
carb::cpp::operator””_sv: Creates a string view of a character array literal. noexcept
carb::cpp::operator””_sv: Creates a string view of a character array literal. noexcept
carb::cpp::operator<: Lexicographically compare two string views.
carb::cpp::operator<: Lexicographically compare two string views.
carb::cpp::operator<: Lexicographically compare two string views.
carb::cpp::operator<: Lexicographically compare two string views.
carb::cpp::operator<: Lexicographically compare two string views.
carb::cpp::operator<: Lexicographically compare two string views.
carb::cpp::operator<: Lexicographically compare two string views.
carb::cpp::operator<: Lexicographically compare two string views.
carb::cpp::operator<: Lexicographically compare two string views.
carb::cpp::operator<=: Lexicographically compare two string views.
carb::cpp::operator<=: Lexicographically compare two string views.
carb::cpp::operator<=: Lexicographically compare two string views.
carb::cpp::operator<=: Lexicographically compare two string views.
carb::cpp::operator<=: Lexicographically compare two string views.
carb::cpp::operator<=: Lexicographically compare two string views.
carb::cpp::operator<=: Lexicographically compare two string views.
carb::cpp::operator<=: Lexicographically compare two string views.
carb::cpp::operator<=: Lexicographically compare two string views.
carb::cpp::operator==: Lexicographically compare two string views.
carb::cpp::operator==: Lexicographically compare two string views.
carb::cpp::operator==: Lexicographically compare two string views.
carb::cpp::operator==: Lexicographically compare two string views.
carb::cpp::operator==: Lexicographically compare two string views.
carb::cpp::operator==: Lexicographically compare two string views.
carb::cpp::operator==: Lexicographically compare two string views.
carb::cpp::operator==: Lexicographically compare two string views.
carb::cpp::operator==: Lexicographically compare two string views.
carb::cpp::operator>: Lexicographically compare two string views.
carb::cpp::operator>: Lexicographically compare two string views.
carb::cpp::operator>: Lexicographically compare two string views.
carb::cpp::operator>: Lexicographically compare two string views.
carb::cpp::operator>: Lexicographically compare two string views.
carb::cpp::operator>: Lexicographically compare two string views.
carb::cpp::operator>: Lexicographically compare two string views.
carb::cpp::operator>: Lexicographically compare two string views.
carb::cpp::operator>: Lexicographically compare two string views.
carb::cpp::operator>=: Lexicographically compare two string views.
carb::cpp::operator>=: Lexicographically compare two string views.
carb::cpp::operator>=: Lexicographically compare two string views.
carb::cpp::operator>=: Lexicographically compare two string views.
carb::cpp::operator>=: Lexicographically compare two string views.
carb::cpp::operator>=: Lexicographically compare two string views.
carb::cpp::operator>=: Lexicographically compare two string views.
carb::cpp::operator>=: Lexicographically compare two string views.
carb::cpp::operator>=: Lexicographically compare two string views.
carb::cpp::popcount: Returns the number of 1 bits in the value of x.
carb::cpp::popcount_constexpr: Returns the number of 1 bits in the value of x.
carb::cpp::swap: Swaps two string views.
Structs
carb::cpp::conjunction: A conjunction is the logical and of all
B
traits.carb::cpp::disjunction: A disjunction is the logical or of all
B
traits.carb::cpp::invoke_result: Get the result type of calling
Func
with theTArgs
pack.carb::cpp::is_invocable: Check if the
Func
is invocable with theTArgs
pack.carb::cpp::is_invocable_r: Check if invoking
Func
with theTArgs
pack will returnR
.carb::cpp::is_nothrow_convertible: Determine if
From
can be implicitly-converted toTo
without throwing an exception.carb::cpp::is_nothrow_invocable: Check if invoking
Func
with theTArgs
pack will not throw.carb::cpp::is_nothrow_invocable_r: Check that invoking
Func
with theTArgs
pack and converting it toR
will not throw.carb::cpp::negation: A logical not of
B
trait.carb::cpp::remove_cvref: If the type T is a reference type, provides the member typedef type which is the type referred to by T with its topmost cv-qualifiers removed. Otherwise type is T with its topmost cv-qualifiers removed.
carb::cpp::type_identity: Provides the member typedef type that names T (i.e. the identity transformation). This can be used to establish non-deduced contexts in template argument deduction.
Typedefs
carb::cpp::binary_semaphore: Alias for a counting semaphore that can only be acquired by one caller at a time.
carb::cpp::bool_constant: An integral constant with
bool
type and valueB
.carb::cpp::invoke_result_t: Helper for carb::cpp::invoke_result which accesses the
type
member.carb::cpp::remove_cvref_t: Helper type for remove_cvref .
carb::cpp::string_view: basic_string_view<char>
carb::cpp::type_identity_t: Helper type for type_identity .
carb::cpp::u16string_view: basic_string_view<char16_t>
carb::cpp::u32string_view: basic_string_view<char32_t>
carb::cpp::void_t: Void type.
carb::cpp::wstring_view: basic_string_view<wchar_t>
Variables
carb::cpp::dynamic_extent: A constant of type size_t that is used to differentiate carb::cpp::span of static and dynamic extent.