diff options
| author | jsmall-nvidia <jsmall@nvidia.com> | 2019-05-31 17:20:37 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-05-31 17:20:37 -0400 |
| commit | 6cbc3929a54d37bd23cb5efa8e3320ba02f78b2f (patch) | |
| tree | 5a23cb47782e9e2a77762c90dd35da1005eba8d0 /source/core/array-view.h | |
| parent | b81ff3ef968d1cc4e954b31a1812b3c391d17b02 (diff) | |
Use slang- prefix on slang compiler and core source (#973)
* Prefixing source files in source/slang with slang-
* Prefix source in source/slang with slang- prefix.
* Rename core source files with slang- prefix.
* Update project files.
* Fix problems from automatic merge.
Diffstat (limited to 'source/core/array-view.h')
| -rw-r--r-- | source/core/array-view.h | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/source/core/array-view.h b/source/core/array-view.h deleted file mode 100644 index ad9673e2e..000000000 --- a/source/core/array-view.h +++ /dev/null @@ -1,112 +0,0 @@ -#ifndef CORE_LIB_ARRAY_VIEW_H -#define CORE_LIB_ARRAY_VIEW_H - -#include "common.h" - -namespace Slang -{ - template<typename T> - class ArrayView - { - private: - T* m_buffer; - int m_count; - public: - const T* begin() const { return m_buffer; } - T* begin() { return m_buffer; } - - const T* end() const { return m_buffer + m_count; } - T* end() { return m_buffer + m_count; } - - public: - ArrayView(): - m_buffer(nullptr), - m_count(0) - { - } - ArrayView(T& singleObj): - m_buffer(&singleObj), - m_count(1) - { - } - ArrayView(T* buffer, int size): - m_buffer(buffer), - m_count(size) - { - } - - inline int getCount() const { return m_count; } - - inline const T& operator [](int idx) const - { - SLANG_ASSERT(idx >= 0 && idx <= m_count); - return m_buffer[idx]; - } - inline T& operator [](int idx) - { - SLANG_ASSERT(idx >= 0 && idx <= m_count); - return m_buffer[idx]; - } - - inline const T* getBuffer() const { return m_buffer; } - inline T* getBuffer() { return m_buffer; } - - template<typename T2> - int indexOf(const T2 & val) const - { - for (int i = 0; i < m_count; i++) - { - if (m_buffer[i] == val) - return i; - } - return -1; - } - - template<typename T2> - int lastIndexOf(const T2 & val) const - { - for (int i = m_count - 1; i >= 0; i--) - { - if (m_buffer[i] == val) - return i; - } - return -1; - } - - template<typename Func> - int findFirstIndex(const Func& predicate) const - { - for (int i = 0; i < m_count; i++) - { - if (predicate(m_buffer[i])) - return i; - } - return -1; - } - - template<typename Func> - int findLastIndex(const Func& predicate) const - { - for (int i = m_count - 1; i >= 0; i--) - { - if (predicate(m_buffer[i])) - return i; - } - return -1; - } - }; - - template<typename T> - ArrayView<T> makeArrayView(T& obj) - { - return ArrayView<T>(obj); - } - - template<typename T> - ArrayView<T> makeArrayView(T* buffer, int count) - { - return ArrayView<T>(buffer, count); - } -} - -#endif |
