25 lines
619 B
C++
25 lines
619 B
C++
#ifndef __JABYENGINE_ARRAY_RANGE_HPP__
|
|
#define __JABYENGINE_ARRAY_RANGE_HPP__
|
|
#include "../../stddef.h"
|
|
|
|
namespace JabyEngine {
|
|
template<typename T>
|
|
struct ArrayRange {
|
|
T* start = nullptr;
|
|
size_t size = 0;
|
|
|
|
constexpr ArrayRange() = default;
|
|
constexpr ArrayRange(T* start, size_t size) : start(start), size(size) {
|
|
}
|
|
|
|
constexpr T& operator[](size_t idx) {
|
|
return this->start[idx];
|
|
}
|
|
|
|
constexpr const T& operator[](size_t idx) const {
|
|
return this->start[idx];
|
|
}
|
|
};
|
|
}
|
|
|
|
#endif //!__JABYENGINE_ARRAY_RANGE_HPP__
|