Blender V5.0
blender::fn::multi_function::build::exec_presets::SomeSpanOrSingle< Indices > Struct Template Reference

#include <FN_multi_function_builder.hh>

Public Member Functions

template<typename... ParamTags, typename... LoadedParams, size_t... I>
auto create_devirtualizers (TypeSequence< ParamTags... >, std::index_sequence< I... >, const std::tuple< LoadedParams... > &loaded_params) const

Static Public Attributes

static constexpr bool use_devirtualization = true
static constexpr FallbackMode fallback_mode = FallbackMode::Materialized

Detailed Description

template<size_t... Indices>
struct blender::fn::multi_function::build::exec_presets::SomeSpanOrSingle< Indices >

A slightly weaker variant of AllSpanOrSingle. It generates less code, because it assumes that some of the inputs are most likely single values. It should be used for small functions which have too many inputs to make #AllSingleOrSpan a reasonable choice.

Definition at line 90 of file FN_multi_function_builder.hh.

Member Function Documentation

◆ create_devirtualizers()

template<size_t... Indices>
template<typename... ParamTags, typename... LoadedParams, size_t... I>
auto blender::fn::multi_function::build::exec_presets::SomeSpanOrSingle< Indices >::create_devirtualizers ( TypeSequence< ParamTags... > ,
std::index_sequence< I... > ,
const std::tuple< LoadedParams... > & loaded_params ) const
inline

Member Data Documentation

◆ fallback_mode

template<size_t... Indices>
FallbackMode blender::fn::multi_function::build::exec_presets::SomeSpanOrSingle< Indices >::fallback_mode = FallbackMode::Materialized
staticconstexpr

Definition at line 92 of file FN_multi_function_builder.hh.

◆ use_devirtualization

template<size_t... Indices>
bool blender::fn::multi_function::build::exec_presets::SomeSpanOrSingle< Indices >::use_devirtualization = true
staticconstexpr

Definition at line 91 of file FN_multi_function_builder.hh.


The documentation for this struct was generated from the following file: