Determine if a (derived) type appears in a parameter pack
Count number of times a (derived) type appears in a parameter pack
Also refactors utilities::type_traits::tuple::has_type to leverage these new type traits
Just to state it outright - parameter_pack_contains_typecould delegate to parameter_pack_count_type, but since std::disjunction is early exit with even minor compiler optimizations, its use is preferable for large parameter packs.
TODO
[x] Cleanup old tuple type traits if this is an agreeable format
Status
Brief Description
Add some TMP functionality revolving around parameter packs as suggested in https://github.com/NWChemEx-Project/LibChemist/pull/189
Detailed Description
Adds functions to
Also refactors
utilities::type_traits::tuple::has_type
to leverage these new type traitsJust to state it outright -
parameter_pack_contains_type
could delegate toparameter_pack_count_type
, but sincestd::disjunction
is early exit with even minor compiler optimizations, its use is preferable for large parameter packs.TODO