A type-unsafe stack for storing different types of data. More...
#include <stack.h>
Public Member Functions | |
| template<typename T > | |
| T * | Bottom () |
| template<typename T > | |
| const T * | Bottom () const |
| void | Clear () |
| bool | Empty () const |
| template<typename T > | |
| T * | End () |
| template<typename T > | |
| const T * | End () const |
| Allocator & | GetAllocator () |
| size_t | GetCapacity () const |
| size_t | GetSize () const |
| bool | HasAllocator () const |
| template<typename T > | |
| T * | Pop (size_t count) |
| template<typename T > | |
| RAPIDJSON_FORCEINLINE T * | Push (size_t count=1) |
| template<typename T > | |
| RAPIDJSON_FORCEINLINE T * | PushUnsafe (size_t count=1) |
| template<typename T > | |
| RAPIDJSON_FORCEINLINE void | Reserve (size_t count=1) |
| void | ShrinkToFit () |
| Stack (Allocator *allocator, size_t stackCapacity) | |
| void | Swap (Stack &rhs) RAPIDJSON_NOEXCEPT |
| template<typename T > | |
| T * | Top () |
| template<typename T > | |
| const T * | Top () const |
| ~Stack () | |
Private Member Functions | |
| void | Destroy () |
| template<typename T > | |
| void | Expand (size_t count) |
| Stack & | operator= (const Stack &) |
| void | Resize (size_t newCapacity) |
| Stack (const Stack &) | |
Private Attributes | |
| Allocator * | allocator_ |
| size_t | initialCapacity_ |
| Allocator * | ownAllocator_ |
| char * | stack_ |
| char * | stackEnd_ |
| char * | stackTop_ |
A type-unsafe stack for storing different types of data.
| Allocator | Allocator for allocating stack memory. |
|
inline |
|
inline |
|
private |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inline |
|
inline |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |