diff options
Diffstat (limited to 'source/core/slang-array-view.h')
| -rw-r--r-- | source/core/slang-array-view.h | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/source/core/slang-array-view.h b/source/core/slang-array-view.h index c67a53337..6f5277f5f 100644 --- a/source/core/slang-array-view.h +++ b/source/core/slang-array-view.h @@ -120,10 +120,10 @@ namespace Slang }; template<typename T> - ConstArrayView<T> makeConstArrayView(const T& obj) + ConstArrayView<T> makeConstArrayViewSingle(const T& obj) { return ConstArrayView<T>(&obj, 1); - } + } template<typename T> ConstArrayView<T> makeConstArrayView(const T* buffer, Index count) @@ -131,6 +131,13 @@ namespace Slang return ConstArrayView<T>(buffer, count); } + template<typename T, size_t N> + ConstArrayView<T> makeConstArrayView(const T (&arr)[N]) + { + return ConstArrayView<T>(arr, Index(N)); + } + + // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ArrayView !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! template<typename T> @@ -165,10 +172,10 @@ namespace Slang }; template<typename T> - ArrayView<T> makeArrayView(T& obj) + ArrayView<T> makeArrayViewSingle(T& obj) { return ArrayView<T>(&obj, 1); - } + } template<typename T> ArrayView<T> makeArrayView(T* buffer, Index count) @@ -176,6 +183,13 @@ namespace Slang return ArrayView<T>(buffer, count); } + template<typename T, size_t N> + ArrayView<T> makeArrayView(T (&arr)[N]) + { + return ArrayView<T>(arr, Index(N)); + } + + } #endif |
