|
Blender V4.3
|
Go to the source code of this file.
Classes | |
| struct | blender::TypeForValue< T, Element > |
| struct | blender::TypeTag< T > |
| struct | blender::ValueSequence< T, Elements > |
| struct | blender::TypeSequence< T > |
Namespaces | |
| namespace | blender |
| namespace | blender::detail |
| namespace | blender::parameter_pack_utils_static_tests |
Typedefs | |
| template<typename T , T Value, size_t Size> | |
| using | blender::make_value_sequence |
| template<typename T , T Value1, T Value2, size_t Size, size_t... Value1Indices> | |
| using | blender::make_two_value_sequence |
Enumerations | |
| enum class | blender::parameter_pack_utils_static_tests::MyEnum { blender::parameter_pack_utils_static_tests::A , blender::parameter_pack_utils_static_tests::B } |
Variables | |
| template<typename T , T Value, size_t... I> | |
| ValueSequence< T,((I==0) ? Value :Value)... > | blender::detail::make_value_sequence_impl (std::index_sequence< I... >) |
| template<typename T , T Value1, T Value2, size_t... Value1Indices, size_t... I> | |
| ValueSequence< T,(ValueSequence< size_t, Value1Indices... >::template contains< I >() ? Value1 :Value2)... > | blender::detail::make_two_value_sequence_impl (ValueSequence< size_t, Value1Indices... >, std::index_sequence< I... >) |
C++ has a feature called "parameter packs" which allow building variadic templates. This file has some utilities to work with such parameter packs.
Definition in file BLI_parameter_pack_utils.hh.