A bunch of small C++ utilities
The documentation is available at tl.tartanllama.xyz.
overload
: a rudimentary implementation ofstd::overload
integer_sequence
: C++11 version ofstd::integer_sequence
and friends, plustl::make_index_range
type_traits
: implementations of some type traits from C++17 and Lib Fundamentals v2 TSstd::bool_constant
std::conjunction
std::disjunction
std::negation
std::void_t
std::is_detected
index_constant
variadic_size
- C++14-style
type_trait_t
aliases for C++11 type traits
typelist
: utilities for type liststypelist
index_typelist
cat_typelist
vallist
(C++17)index_vallist
(C++17)cat_vallist
(C++17)
dependent_false
: enablesstatic_assert(dependent_false<T>::value)
in templatesmake_array
: simple implementation ofstd::make_array
numeric_aliases
: Rust-style numeric aliases, e.g.tl::i8
,tl::u64
apply
: Implementation ofstd::apply
decay_copy
: Implementation ofdecay_copy
casts
: some handy castsbit_cast
formemcpy
ing value representationsunderlying_cast
for casting enums to their underlying type
To the extent possible under law, Simon Brand has waived all copyright and related or neighboring rights to the tl library. This work is published from: United Kingdom.