Page Menu
Home
Search
Configure Global Search
Log In
Paste
P2894
(An Untitled Masterwork)
Active
Public
Actions
Authored by
Jacques Lucke (JacquesLucke)
on Apr 12 2022, 6:51 PM.
Edit Paste
Archive Paste
View Raw File
Subscribe
Mute Notifications
Award Token
Tags
None
Subscribers
None
diff --git a/source/blender/blenlib/BLI_devirtualize_arrays_presets.hh b/source/blender/blenlib/BLI_devirtualize_arrays_presets.hh
index 3bfb974cdbb..34f5607aef2 100644
--- a/source/blender/blenlib/BLI_devirtualize_arrays_presets.hh
+++ b/source/blender/blenlib/BLI_devirtualize_arrays_presets.hh
@@ -33,15 +33,14 @@ struct AllSpanOrSingle {
};
template<size_t... SpanIndices> struct SomeSpanOtherSingle {
- template<size_t I> static constexpr bool can_be_span()
+ static constexpr ParamMode get_param_mode(size_t I)
{
- return ((I == SpanIndices) || ...);
- };
+ return ((I == SpanIndices) || ...) ? ParamMode::Span : ParamMode::Single;
+ }
template<size_t... I>
- static constexpr ParamModeSequence<(can_be_span<I>() ? ParamMode::SpanAndSingle :
- ParamMode::Single)...>
- get_modes(std::index_sequence<I...> /* indices */)
+ static constexpr ParamModeSequence<get_param_mode(I)...> get_param_modes(
+ std::index_sequence<I...> /* indices */)
{
return {};
}
@@ -50,7 +49,7 @@ template<size_t... SpanIndices> struct SomeSpanOtherSingle {
void operator()(Devirtualizer<Fn, ParamTags...> &devirtualizer)
{
if (!devirtualizer.template try_execute_devirtualized_custom<MaskMode::Range>(
- get_modes(std::make_index_sequence<sizeof...(ParamTags)>()))) {
+ get_param_modes(std::make_index_sequence<sizeof...(ParamTags)>()))) {
devirtualizer.execute_materialized();
}
}
Event Timeline
Jacques Lucke (JacquesLucke)
created this paste.
Apr 12 2022, 6:51 PM
Log In to Comment