Skip to content

Function cswitch

function cswitch(cvals_t<T, vs...>, const U &, Function &&, Fallback &&) meta

template <typename T, T... vs, typename U, typename Function, typename Fallback = fn_noop>
KFR_INTRINSIC constexpr void cswitch(cvals_t<T, vs...>, const U& value, Function&& function,
                                     Fallback&& fallback = Fallback()) { … }

Template parameters
T element value type
vs candidate values
Parameters
value runtime value to match against
function invoked on match with the corresponding cval_t
fallback invoked when no candidate matches

Fully qualified name: kfr::cswitch(cvals_t<T, vs...>, const U &, Function &&, Fallback &&)

Declared at meta.hpp:1364

Function cswitch

function cswitch(cvals_t<T>, std::type_identity_t<T>, Fn &&, DefFn &&, CmpFn &&) meta

template <typename T, typename Fn, typename DefFn = fn_noop, typename CmpFn = fn_is_equal>
KFR_INTRINSIC constexpr decltype(auto) cswitch(cvals_t<T>, std::type_identity_t<T>, Fn&&,
                                               DefFn&& deffn = DefFn(), CmpFn&& = CmpFn()) { … }

Switch over an empty list: always invokes the default handler

Parameters
deffn invoked since no candidates exist

Fully qualified name: kfr::cswitch(cvals_t<T>, std::type_identity_t<T>, Fn &&, DefFn &&, CmpFn &&)

Declared at meta.hpp:1377

Function cswitch

function cswitch(cvals_t<T, v0, values...>, std::type_identity_t<T>, Fn &&, DefFn &&, CmpFn &&) meta

template <typename T, T v0, T... values, typename Fn, typename DefFn = fn_noop, typename CmpFn = fn_is_equal>
KFR_INTRINSIC constexpr decltype(auto) cswitch(cvals_t<T, v0, values...>, std::type_identity_t<T> value,
                                               Fn&& fn, DefFn&& deffn = DefFn(), CmpFn&& cmpfn = CmpFn()) { … }

Template parameters
T element value type
v0 first candidate value
values remaining candidate values
Parameters
value runtime value to match
fn invoked on match with the corresponding cval_t
deffn invoked when no candidate matches
cmpfn equality predicate invoked as cmpfn(value, candidate)

Fully qualified name: kfr::cswitch(cvals_t<T, v0, values...>, std::type_identity_t<T>, Fn &&, DefFn &&, CmpFn &&)

Declared at meta.hpp:1392

This file was generated by cxxdox, a C++ documentation generator based on MkDocs Material and libclang.