diff options
author | Jacques Lucke <jacques@blender.org> | 2022-01-10 14:28:23 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2022-01-10 14:28:33 +0300 |
commit | bd8fa07a3df6d55ca83778253a3ccaa5a9ca4660 (patch) | |
tree | 20b66dc066354ab9983964b3f3008f23ad29b147 /source/blender/blenlib/BLI_span.hh | |
parent | 934db6a8201afe9b137ff41a3bf3f1da6b32ca02 (diff) |
Cleanup: add utility macro to simplify using std::enable_if
Diffstat (limited to 'source/blender/blenlib/BLI_span.hh')
-rw-r--r-- | source/blender/blenlib/BLI_span.hh | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/blenlib/BLI_span.hh b/source/blender/blenlib/BLI_span.hh index 5e69e28dbb1..b4497977815 100644 --- a/source/blender/blenlib/BLI_span.hh +++ b/source/blender/blenlib/BLI_span.hh @@ -109,7 +109,7 @@ template<typename T> class Span { BLI_assert(size >= 0); } - template<typename U, typename std::enable_if_t<is_span_convertible_pointer_v<U, T>> * = nullptr> + template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v<U, T>))> constexpr Span(const U *start, int64_t size) : data_(static_cast<const T *>(start)), size_(size) { BLI_assert(size >= 0); @@ -144,7 +144,7 @@ template<typename T> class Span { * Support implicit conversions like the one below: * Span<T *> -> Span<const T *> */ - template<typename U, typename std::enable_if_t<is_span_convertible_pointer_v<U, T>> * = nullptr> + template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v<U, T>))> constexpr Span(Span<U> span) : data_(static_cast<const T *>(span.data())), size_(span.size()) { } @@ -501,7 +501,7 @@ template<typename T> class MutableSpan { * Support implicit conversions like the one below: * MutableSpan<T *> -> MutableSpan<const T *> */ - template<typename U, typename std::enable_if_t<is_span_convertible_pointer_v<U, T>> * = nullptr> + template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v<U, T>))> constexpr MutableSpan(MutableSpan<U> span) : data_(static_cast<T *>(span.data())), size_(span.size()) { @@ -512,7 +512,7 @@ template<typename T> class MutableSpan { return Span<T>(data_, size_); } - template<typename U, typename std::enable_if_t<is_span_convertible_pointer_v<T, U>> * = nullptr> + template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v<T, U>))> constexpr operator Span<U>() const { return Span<U>(static_cast<const U *>(data_), size_); |