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_array.hh | |
parent | 934db6a8201afe9b137ff41a3bf3f1da6b32ca02 (diff) |
Cleanup: add utility macro to simplify using std::enable_if
Diffstat (limited to 'source/blender/blenlib/BLI_array.hh')
-rw-r--r-- | source/blender/blenlib/BLI_array.hh | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/blender/blenlib/BLI_array.hh b/source/blender/blenlib/BLI_array.hh index 32588b7450d..80464499634 100644 --- a/source/blender/blenlib/BLI_array.hh +++ b/source/blender/blenlib/BLI_array.hh @@ -100,7 +100,7 @@ class Array { /** * Create a new array that contains copies of all values. */ - template<typename U, typename std::enable_if_t<std::is_convertible_v<U, T>> * = nullptr> + template<typename U, BLI_ENABLE_IF((std::is_convertible_v<U, T>))> Array(Span<U> values, Allocator allocator = {}) : Array(NoExceptConstructor(), allocator) { const int64_t size = values.size(); @@ -112,7 +112,7 @@ class Array { /** * Create a new array that contains copies of all values. */ - template<typename U, typename std::enable_if_t<std::is_convertible_v<U, T>> * = nullptr> + template<typename U, BLI_ENABLE_IF((std::is_convertible_v<U, T>))> Array(const std::initializer_list<U> &values, Allocator allocator = {}) : Array(Span<U>(values), allocator) { @@ -230,13 +230,13 @@ class Array { return MutableSpan<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>))> operator Span<U>() const { return Span<U>(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>))> operator MutableSpan<U>() { return MutableSpan<U>(data_, size_); |