Lines Matching refs:T

115     template<typename T>
118 … if (RAPIDJSON_UNLIKELY(static_cast<std::ptrdiff_t>(sizeof(T) * count) > (stackEnd_ - stackTop_)))
119 Expand<T>(count);
122 template<typename T>
123 RAPIDJSON_FORCEINLINE T* Push(size_t count = 1) {
124 Reserve<T>(count);
125 return PushUnsafe<T>(count);
128 template<typename T>
129 RAPIDJSON_FORCEINLINE T* PushUnsafe(size_t count = 1) {
131 RAPIDJSON_ASSERT(static_cast<std::ptrdiff_t>(sizeof(T) * count) <= (stackEnd_ - stackTop_));
132 T* ret = reinterpret_cast<T*>(stackTop_);
133 stackTop_ += sizeof(T) * count;
137 template<typename T>
138 T* Pop(size_t count) { in Pop()
139 RAPIDJSON_ASSERT(GetSize() >= count * sizeof(T)); in Pop()
140 stackTop_ -= count * sizeof(T); in Pop()
141 return reinterpret_cast<T*>(stackTop_); in Pop()
144 template<typename T>
145 T* Top() { in Top()
146 RAPIDJSON_ASSERT(GetSize() >= sizeof(T)); in Top()
147 return reinterpret_cast<T*>(stackTop_ - sizeof(T)); in Top()
150 template<typename T>
151 const T* Top() const { in Top()
152 RAPIDJSON_ASSERT(GetSize() >= sizeof(T)); in Top()
153 return reinterpret_cast<T*>(stackTop_ - sizeof(T)); in Top()
156 template<typename T>
157 T* End() { return reinterpret_cast<T*>(stackTop_); } in End()
159 template<typename T>
160 const T* End() const { return reinterpret_cast<T*>(stackTop_); } in End()
162 template<typename T>
163 T* Bottom() { return reinterpret_cast<T*>(stack_); } in Bottom()
165 template<typename T>
166 const T* Bottom() const { return reinterpret_cast<T*>(stack_); } in Bottom()
182 template<typename T>
194 size_t newSize = GetSize() + sizeof(T) * count; in Expand()