TypeTraits.h#

Fully qualified name: carb/cpp/TypeTraits.h

In directory: carb/cpp

Source file: TypeTraits.h

C++14-compatible implementation of select functionality from C++ <type_traits> library.

Namespaces#

carb

The main Carbonite namespace.

carb::cpp

Namespace for C++ standard library types after C++14 implemented and usable by C++14 compilers.

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 the TArgs pack.

carb::cpp::is_bounded_array

Checks whether T is an array of known bounds.

carb::cpp::is_bounded_array< T[N]>

Checks whether T is an array of known bounds.

carb::cpp::is_invocable

Check if the Func is invocable with the TArgs pack.

carb::cpp::is_invocable_r

Check if invoking Func with the TArgs pack will return R .

carb::cpp::is_nothrow_convertible

Determine if From can be implicitly-converted to To without throwing an exception.

carb::cpp::is_nothrow_invocable

Check if invoking Func with the TArgs pack will not throw.

carb::cpp::is_nothrow_invocable_r

Check that invoking Func with the TArgs pack and converting it to R will not throw.

carb::cpp::is_nothrow_swappable

carb::cpp::is_nothrow_swappable_with

carb::cpp::is_swappable

carb::cpp::is_swappable_with

carb::cpp::is_unbounded_array

Checks whether T is an array of unknown bounds.

carb::cpp::is_unbounded_array< T[]>

Checks whether T is an array of unknown bounds.

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.