8 #ifndef TREELITE_CONTIGUOUS_ARRAY_H_
9 #define TREELITE_CONTIGUOUS_ARRAY_H_
31 inline T
const*
Data()
const;
33 inline T
const*
End()
const;
35 inline T
const&
Back()
const;
36 inline std::size_t
Size()
const;
37 inline bool Empty()
const;
38 inline void Reserve(std::size_t newsize);
39 inline void Resize(std::size_t newsize);
40 inline void Resize(std::size_t newsize, T t);
43 inline void Extend(std::vector<T>
const& other);
45 inline std::vector<T>
AsVector()
const;
49 inline T
const&
operator[](std::size_t idx)
const;
51 inline T&
at(std::size_t idx);
52 inline T
const&
at(std::size_t idx)
const;
54 inline T&
at(
int idx);
55 inline T
const&
at(
int idx)
const;
56 static_assert(std::is_pod<T>::value,
"T must be POD");
61 std::size_t capacity_;
Definition: contiguous_array.h:17
T * End()
Definition: contiguous_array.h:118
T & Back()
Definition: contiguous_array.h:128
ContiguousArray Clone() const
Definition: contiguous_array.h:79
bool Empty() const
Definition: contiguous_array.h:143
~ContiguousArray()
Definition: contiguous_array.h:24
ContiguousArray(ContiguousArray const &)=delete
T & operator[](std::size_t idx)
Definition: contiguous_array.h:264
std::vector< T > AsVector() const
Definition: contiguous_array.h:243
void Reserve(std::size_t newsize)
Definition: contiguous_array.h:148
T * Data()
Definition: contiguous_array.h:108
std::size_t Size() const
Definition: contiguous_array.h:138
T & at(std::size_t idx)
Definition: contiguous_array.h:274
void PushBack(T t)
Definition: contiguous_array.h:188
void Resize(std::size_t newsize)
Definition: contiguous_array.h:157
ContiguousArray()
Definition: contiguous_array.h:20
void UseForeignBuffer(void *prealloc_buf, std::size_t size)
Definition: contiguous_array.h:97
ContiguousArray & operator=(ContiguousArray const &)=delete
void Clear()
Definition: contiguous_array.h:182
void Extend(std::vector< T > const &other)
Definition: contiguous_array.h:201
bool operator==(ContiguousArray const &other)
Definition: contiguous_array.h:251
Implementation for ContiguousArray.
Definition: contiguous_array.h:14