Skip to content

meta


compound_type_traits class

template <typename T> compound_type_traits

template <typename T> compound_type_traits

cval_t class

template <typename T, T val> cval_t

is_val_impl class (details::is_val_impl)

template <typename T> is_val_impl

template <typename T, T val> is_val_impl

get_nth class (details::get_nth)

template <size_t index, typename T, T first, T... rest>
get_nth

template <typename T, T first, T... rest> get_nth

get_nth_e class (details::get_nth_e)

template <size_t index, typename T> get_nth_e

get_nth_type class (details::get_nth_type)

template <size_t index, typename... Types> get_nth_type

cvals_t class

template <typename T, T... values> cvals_t

template <typename T> cvals_t

get_nth_e class (details::get_nth_e)

template <size_t index, typename T, T... vals> get_nth_e

ctype_t class

template <typename T> ctype_t

ctypes_t class

template <typename... Types> ctypes_t

concat_impl class (details::concat_impl)

template <typename T1, typename... Ts> concat_impl

template <typename T> concat_impl

template <typename T, T... values1, T... values2>
concat_impl

template <typename... types1, typename... types2>
concat_impl

template <typename T1, typename T2, typename T3,
          typename... Ts>
concat_impl

function_arguments_impl class (details::function_arguments_impl)

template <typename> function_arguments_impl

template <typename Ret, typename... Args>
function_arguments_impl

template <typename Class, typename Ret, typename... Args>
function_arguments_impl

template <typename Class, typename Ret, typename... Args>
function_arguments_impl

filter_impl class (details::filter_impl)

template <typename T1, typename T2> filter_impl

template <typename T> filter_impl

template <typename T, T value, T... values, bool flag,
          bool... flags>
filter_impl

cvalseq_impl class (details::cvalseq_impl)

template <typename T, size_t Nsize, T Nstart,
          ptrdiff_t Nstep>
cvalseq_impl

template <typename T, T Nstart, ptrdiff_t Nstep>
cvalseq_impl

template <typename T, T Nstart, ptrdiff_t Nstep>
cvalseq_impl

template <typename T, T Nstart, ptrdiff_t Nstep>
cvalseq_impl

template <typename T, T Nstart, ptrdiff_t Nstep>
cvalseq_impl

scale_impl class (details::scale_impl)

template <typename T1, typename T2> scale_impl

template <size_t... Args1, size_t... Args2> scale_impl

unique_enum_impl class (details::unique_enum_impl)

template <int N> unique_enum_impl

next_poweroftwo function

template <std::unsigned_integral T>
constexpr T next_poweroftwo(T n) noexcept

Returns a nearest power of two that is greater or equal than n


prev_poweroftwo function

template <std::unsigned_integral T>
constexpr T prev_poweroftwo(T n) noexcept

Returns a nearest power of two that is less or equal than n


bits_to_type_impl class (details::bits_to_type_impl)

template <char kind, size_t bits> bits_to_type_impl

bits_to_type_impl

bits_to_type_impl

bits_to_type_impl

bits_to_type_impl

bits_to_type_impl

bits_to_type_impl

bits_to_type_impl

bits_to_type_impl

bits_to_type_impl

bits_to_type_impl

findinttype_impl class (details::findinttype_impl)

template <int64_t min, int64_t max, typename... Types>
findinttype_impl

template <int64_t min, int64_t max, typename T,
          typename... Types>
findinttype_impl

template <int64_t min, int64_t max> findinttype_impl

is_numeric variable

template <typename T>
constexpr inline bool is_numeric =
    is_number<deep_subtype<T>>

Check if the type argument is a number or a vector of numbers


is_numeric_args variable

template <typename... Ts>
constexpr inline bool is_numeric_args =
    (is_numeric<Ts> && ...)

Check if the type arguments are a numbers or a vectors of numbers


is_numeric_or_bool variable

template <typename T>
constexpr inline bool is_numeric_or_bool =
    is_number_or_bool<deep_subtype<T>>

Check if the type argument is a number, bool or a vector of numbers of bool


swallow class

swallow

Utility class to use in list-initialization context


pass_through function

template <typename T>
constexpr T &&pass_through(T &&x) noexcept

Function that returns its first argument


noop function

template <typename... Ts>
constexpr void noop(Ts &&...) noexcept

Function that returns void and ignores all its arguments


get_first function

template <typename T1, typename... Ts>
constexpr T1 &&get_first(T1 &&x, Ts &&...) noexcept

Function that returns its first argument and ignores all other arguments


get_second function

template <typename T1, typename T2, typename... Ts>
constexpr T2 &&get_second(T1, T2 &&x, Ts &&...) noexcept

Function that returns its second argument and ignores all other arguments


get_third function

template <typename T1, typename T2, typename T3,
          typename... Ts>
constexpr T3 &&get_third(T1 &&, T2 &&, T3 &&x,
                         Ts &&...) noexcept

Function that returns its third argument and ignores all other arguments


returns function

template <typename T, typename... Ts>
constexpr T returns(Ts &&...) noexcept

Function that returns value-initialization of type T and ignores all its arguments


return_constant function

template <typename T, T value, typename... Args>
constexpr T return_constant(Args &&...) noexcept

Function that returns constant of type T and ignores all its arguments


fn_pass_through class

fn_pass_through

fn_noop class

fn_noop

fn_get_first class

fn_get_first

fn_get_second class

fn_get_second

fn_get_third class

fn_get_third

fn_returns class

template <> fn_returns

fn_return_constant class

template <typename T, T value> fn_return_constant

fn_is_equal class

fn_is_equal

fn_is_notequal class

fn_is_notequal

fn_is_less class

fn_is_less

fn_is_greater class

fn_is_greater

fn_is_lessorequal class

fn_is_lessorequal

fn_is_greaterorequal class

fn_is_greaterorequal

fn_is_between class

fn_is_between

fn_noinline class

template <typename Fn> fn_noinline

choose_const function

template <typename T> constexpr T choose_const() noexcept

Selects constant of the specific type

CHECK( choose_const<f32\>( 32.0f, 64.0 ) == 32.0f );
CHECK( choose_const<f64\>( 32.0f, 64.0 ) == 64.0 );


autocast_impl class

template <typename Tfrom> autocast_impl

overload_priority class

template <int n = 10> overload_priority

overload_priority

special_value class

special_value

b8 typedef

b8 = bool

Short names for common types


fix_type_impl class (details::fix_type_impl)

template <typename T> fix_type_impl

fix_type_impl

fix_type_impl

fix_type_impl

fix_type_impl

fix_type_impl

datatype enum

enum class datatype : int

An enumeration representing data type


typebits class

template <typename T> typebits

flt_type_impl class (details::flt_type_impl)

template <typename T> flt_type_impl

flt_type_impl

flt_type_impl

array_ref class

template <typename T> array_ref

Reference to array


result class

template <typename Type, typename ErrEnum,
          ErrEnum OkValue = static_cast<ErrEnum>(0)>
result

cstring class

template <size_t N> cstring

range class

template <typename T> range

Iterable range

iterator class (range::iterator)

iterator

make_range function

template <typename T>
constexpr range<T> make_range(T begin, T end)

Make iterable range object


template <typename T, typename D>
constexpr range<std::common_type_t<T, D>>
make_range(T begin, T end, D step)

Make iterable range object with step


representation class

template <typename T> representation

fmt_t class

template <typename T, char t = static_cast<char>(-1),
          int width = -1, int prec = -1>
fmt_t

representation class

template <typename T> representation

format_t class

template <char... chars> format_t

template <char... chars> print_t

representation class

template <typename T> representation

template <typename T1, typename T2> representation

template <typename T1> representation

template <typename T1> representation

template <typename T1> representation

representation

template <typename T, size_t Size> representation

template <typename T, typename Allocator> representation

representation

func_filter class (details::func_filter)

template <typename Fn> func_filter

template <typename Result, typename... Args> func_filter

function class

template <typename F> function

std::function-like lightweight function wrapper

function<int( float )\> f = []( float x ){ return static_cast<int\>( x ); };
CHECK( f( 3.4f ) == 3 )


function_abstract class (details::function_abstract)

template <typename R, typename... Args> function_abstract

function_impl class (details::function_impl)

template <typename Fn, typename R, typename... Args>
function_impl

function class

template <typename R, typename... Args> function

type_id_t class

type_id_t

type_name function

template <typename T>
inline const char *type_name() noexcept

Gets the fully qualified name of the type, including namespace and template parameters (if any)
Template param T type
Returns name of the type


template <typename T>
inline const char *type_name(T x) noexcept

Gets the fully qualified name of the type, including namespace and template parameters (if any)
Param x value of specific type
Returns name of the type


ctypeid function

template <typename T> constexpr inline type_id_t ctypeid()

Gets unique value associated with the type
Template param T type
Returns value of type that supports operator== and operator!=


template <typename T>
constexpr inline type_id_t ctypeid(T x)

Gets unique value associated with the type
Param x value of specific type
Returns value of type that supports operator== and operator!=


cvals_t class

template <typename T, T> cvals_t

swallow class

swallow

Utility class to use in list-initialization context


cvalseq_impl class (details::cvalseq_impl)

template <typename T, size_t Nsize, T Nstart,
          std::ptrdiff_t Nstep>
cvalseq_impl

named_arg class

template <typename T> named_arg

named class

named

Auto-generated from sources, Revision , https://github.com/kfrlib/kfr/blob//include/kfr/