Looking through the source, making this const would involve just adding const
before 2 functions
Is there a reason it hasn't been done?
EDIT: there doesn't appear to be any const way to construct a Mask, am I missing something?
Looking through the source, making this const would involve just adding const
before 2 functions
Is there a reason it hasn't been done?
EDIT: there doesn't appear to be any const way to construct a Mask, am I missing something?
Generally, for "easily could be const
," the rule is to just make it const-unstable iff the type is const-constructible.
I think we can and should eventually remove that iff (so functions which optionally do the operation if a value is present can be const
), but that's a for-later policy change.
Ah so all the Mask
producing operations should be const
unstable then? (As Mask
appears to be just a wrapper around Simd
with extra invariants)
Seeing as Mask
is behind the portable_simd
feature does it (the unstable const) need it's own feature still?
For reference, the Simd
equivalents are mostly const
If the functionality it's calling doesn't have a separate constness feature gate, then it doesn't need to gate constness separately.