Public Methods |
| ACE_Obstack_T (size_t size = (4096 * sizeof (CHAR)) - sizeof (ACE_Obchunk), ACE_Allocator *allocator_strategy = 0) |
| ~ACE_Obstack_T (void) |
int | request (size_t len) |
| Request Obstack to prepare a block at least len long for building a new string. Return -1 if fail, 0 if success.
|
CHAR* | grow (CHAR c) |
| Inserting a new CHAR c into the current building block without freezing (null terminating) the block. This function will create new chunk by checking the boundary of current Obchunk. Return the location c gets inserted to, or 0 if error.
|
void | grow_fast (CHAR c) |
| Inserting a new CHAR c into the current building block without freezing (null terminating) the block and without checking for out-of-bound error.
|
CHAR* | freeze (void) |
| Freeze the current building block by null terminating it. Return the starting address of the current building block, 0 if error occurs.
|
CHAR* | copy (const CHAR *data, size_t len) |
| Copy the data into the current Obchunk and freeze the current block. Return the starting address of the current building block, 0 if error occurs. len specify the string length, not the actually data size.
|
size_t | length (void) const |
| Return the maximum length or size of a string that can be put into this Obstack. size = length * sizeof (CHAR).
|
size_t | size (void) const |
void | release (void) |
| "Release" the entire stack of Obchunks, putting it back on the free list.
|
void | dump (void) const |
| Dump the state of an object.
|
Public Attributes |
| ACE_ALLOC_HOOK_DECLARE |
| Declare the dynamic allocation hooks.
|
Protected Methods |
class ACE_Obchunk* | new_chunk (void) |
Protected Attributes |
ACE_Allocator* | allocator_strategy_ |
| Pointer to the allocator used by this Obstack.
|
size_t | size_ |
| Current size of the Obstack;.
|
class ACE_Obchunk* | head_ |
| Head of the Obchunk chain.
|
class ACE_Obchunk* | curr_ |
| Pointer to the current Obchunk.
|