diff options
Diffstat (limited to 'Private/NewKit/ArrayList.hpp')
| -rw-r--r-- | Private/NewKit/ArrayList.hpp | 89 |
1 files changed, 45 insertions, 44 deletions
diff --git a/Private/NewKit/ArrayList.hpp b/Private/NewKit/ArrayList.hpp index b7ab50cf..31646472 100644 --- a/Private/NewKit/ArrayList.hpp +++ b/Private/NewKit/ArrayList.hpp @@ -10,48 +10,49 @@ namespace NewOS { - template <typename T> - class ArrayList final - { - public: - explicit ArrayList(T *list) - : fList(reinterpret_cast<T>(list)) - {} - - ~ArrayList() = default; - - ArrayList &operator=(const ArrayList &) = default; - ArrayList(const ArrayList &) = default; - - T *Data() - { - return fList; - } - - const T *CData() - { - return fList; - } - - T &operator[](int index) const - { - return fList[index]; - } - - operator bool() - { - return fList; - } - - private: - T *fList; - - friend class InitHelpers; - - }; - - template <typename ValueType> ArrayList<ValueType> make_list(ValueType val) - { - return ArrayList<ValueType>{val}; - } + template <typename T> + class ArrayList final + { + public: + explicit ArrayList(T* list) + : fList(reinterpret_cast<T>(list)) + { + } + + ~ArrayList() = default; + + ArrayList& operator=(const ArrayList&) = default; + ArrayList(const ArrayList&) = default; + + T* Data() + { + return fList; + } + + const T* CData() + { + return fList; + } + + T& operator[](int index) const + { + return fList[index]; + } + + operator bool() + { + return fList; + } + + private: + T* fList; + + friend class InitHelpers; + }; + + template <typename ValueType> + ArrayList<ValueType> make_list(ValueType val) + { + return ArrayList<ValueType>{val}; + } } // namespace NewOS |
