16template <
typename T,
typename Allocator = JGadget::TAllocator<T> >
60 T*
const pFirst = pIt;
67 void** newEnd = pFirst + pCount;
70 void** pOverwrittenValues =
pEnd_ - pCount;
88 void** newDataPointer =
mAllocator.allocate(newSize, 0);
89 if (!newDataPointer) {
109 u32 diff = (int)((uintptr_t)pos - (uintptr_t)
begin()) / 4;
122 return (
int)((uintptr_t)
pEnd_ - (uintptr_t)
pBegin_) / 4;
131 u32 neededNewSpace = oldSize + count;
134 return neededNewSpace > extendedSize ? neededNewSpace : extendedSize;
146 T* vectorEnd =
pEnd_;
169 void insert(
void**,
void*
const&);
170 void**
erase(
void**,
void**);
177struct TVector_pointer : TVector_pointer_void {
unsigned long u32
Definition types.h:12
u32 extend_default(u32, u32, u32)
Definition std-vector.cpp:5
u32(* extendFunc)(u32, u32, u32)
Definition std-vector.h:14
T * uninitialized_copy(T *first, T *last, T *result)
Definition msl_memory.h:45
OutputIt copy(InputIt first, InputIt last, OutputIt d_first)
Definition algorithm.h:131
BidirectionalIterator2 copy_backward(BidirectionalIterator1 first, BidirectionalIterator1 last, BidirectionalIterator2 result)
Definition algorithm.h:140
ForwardIt uninitialized_fill_n(ForwardIt first, Size count, const T &value)
Definition msl_memory.h:7
@ start
Definition strtoul.c:8
Definition std-memory.h:8
Definition std-vector.h:18
Allocator * mAllocator
Definition std-vector.h:28
T * mPtr
Definition std-vector.h:29
TDestructed_deallocate_(JGadget::TAllocator< T > &allocator, T *ptr)
Definition std-vector.h:19
void set(T *ptr)
Definition std-vector.h:26
~TDestructed_deallocate_()
Definition std-vector.h:24
void insert(void **, void *const &)
Definition std-vector.cpp:19
void ** erase(void **, void **)
Definition std-vector.cpp:23
void clear()
Definition std-vector.h:172
TVector_pointer_void(u32, void *const &, const JGadget::TAllocator< void * > &allocator)
TVector_pointer_void(const JGadget::TAllocator< void * > &allocator)
Definition std-vector.cpp:9
~TVector_pointer_void()
Definition std-vector.cpp:12
void push_back(void *const &value)
Definition std-vector.h:173
T * begin()
Definition std-vector.h:182
const T * begin() const
Definition std-vector.h:181
T * end()
Definition std-vector.h:185
~TVector_pointer()
Definition std-vector.h:179
const T * end() const
Definition std-vector.h:184
void push_back(const T &ref)
Definition std-vector.h:187
TVector_pointer(const TAllocator< void * > &allocator)
Definition std-vector.h:178
u32 GetSize_extend_(u32 count)
Definition std-vector.h:127
void insert(T *pos, u32 count, const T &val)
Definition std-vector.h:45
TVector(Allocator const &allocator)
Definition std-vector.h:32
T * Insert_raw(T *pIt, u32 pCount)
Definition std-vector.h:57
void DestroyElement_(T *start, T *end)
Definition std-vector.h:137
Allocator mAllocator
Definition std-vector.h:155
T * insert(T *pos, const T &val)
Definition std-vector.h:108
u32 capacity()
Definition std-vector.h:125
T * pEnd_
Definition std-vector.h:157
u32 mCapacity
Definition std-vector.h:158
void DestroyElement_all_()
Definition std-vector.h:143
void clear()
Definition std-vector.h:153
u32 size() const
Definition std-vector.h:118
T * begin() const
Definition std-vector.h:114
T * end() const
Definition std-vector.h:116
T * pBegin_
Definition std-vector.h:156
T * erase(T *start, T *end)
Definition std-vector.h:145
~TVector()
Definition std-vector.h:40
extendFunc pfnExtend_
Definition std-vector.h:159