#include <String_Base.h>
Inheritance diagram for ACE_String_Base:
Public Methods | |
ACE_String_Base (ACE_Allocator *alloc=0) | |
Default constructor. More... | |
ACE_String_Base (const CHAR *s, ACE_Allocator *alloc=0, int release=1) | |
Constructor that copies s into dynamically allocated memory. More... | |
ACE_String_Base (const CHAR *s, size_t len, ACE_Allocator *alloc=0, int release=1) | |
Constructor that copies len CHARs of s into dynamically allocated memory (will zero terminate the result). More... | |
ACE_String_Base (const ACE_String_Base< CHAR > &s) | |
Copy constructor. More... | |
ACE_String_Base (CHAR c, ACE_Allocator *alloc=0) | |
Constructor that copies c into dynamically allocated memory. More... | |
ACE_String_Base (size_t len, CHAR c=0, ACE_Allocator *alloc=0) | |
Constructor that dynamically allocate len long of char array and initialize it to c using alloc to allocate the memory. More... | |
~ACE_String_Base (void) | |
Deletes the memory... More... | |
const CHAR & | operator[] (size_t slot) const |
Return the <slot'th> character in the string (doesn't perform bounds checking). More... | |
CHAR & | operator[] (size_t slot) |
Return the <slot'th> character by reference in the string (doesn't perform bounds checking). More... | |
ACE_String_Base< CHAR > & | operator= (const ACE_String_Base< CHAR > &s) |
Assignment operator (does copy memory). More... | |
void | set (const CHAR *s, int release=1) |
Copy s into this ACE_String_Base. More... | |
void | set (const CHAR *s, size_t len, int release) |
Copy len bytes of s (will zero terminate the result). More... | |
void | clear (int release=0) |
Clear this string. More... | |
ACE_String_Base< CHAR > | substring (size_t offset, ssize_t length=-1) const |
Return a substring given an offset and length, if length == -1 use rest of str. More... | |
ACE_String_Base< CHAR > | substr (size_t offset, ssize_t length=-1) const |
Same as <substring>. More... | |
ACE_String_Base< CHAR > & | operator+= (const ACE_String_Base< CHAR > &s) |
Concat operator (copies memory). More... | |
u_long | hash (void) const |
Returns a hash value for this string. More... | |
size_t | length (void) const |
Return the length of the string. More... | |
CHAR * | rep (void) const |
Get a copy of the underlying representation. More... | |
const CHAR * | fast_rep (void) const |
Get at the underlying representation directly! _Don't_ even think about casting the result to (char *) and modifying it, if it has length 0! More... | |
const CHAR * | c_str (void) const |
Same as STL String's <c_str> and <fast_re. More... | |
ssize_t | strstr (const ACE_String_Base< CHAR > &s) const |
Comparison operator that will match substrings. More... | |
ssize_t | find (const ACE_String_Base< CHAR > &str, size_t pos=0) const |
Find <str> starting at pos. More... | |
ssize_t | find (const CHAR *s, size_t pos=0) const |
Find s starting at pos. More... | |
ssize_t | find (CHAR c, size_t pos=0) const |
Find c starting at pos. More... | |
ssize_t | rfind (CHAR c, ssize_t pos=npos) const |
Find c starting at pos (counting from the end). More... | |
int | operator== (const ACE_String_Base< CHAR > &s) const |
Equality comparison operator (must match entire string). More... | |
int | operator< (const ACE_String_Base< CHAR > &s) const |
Less than comparison operator. More... | |
int | operator> (const ACE_String_Base< CHAR > &s) const |
Greater than comparison operator. More... | |
int | operator!= (const ACE_String_Base< CHAR > &s) const |
Inequality comparison operator. More... | |
int | compare (const ACE_String_Base< CHAR > &s) const |
Performs a strncmp comparison. More... | |
void | dump (void) const |
Dump the state of an object. More... | |
void | resize (size_t len, CHAR c=0) |
This method is designed for high-performance. More... | |
Public Attributes | |
ACE_ALLOC_HOOK_DECLARE | |
Declare the dynamic allocation hooks. More... | |
Protected Attributes | |
ACE_Allocator * | allocator_ |
Pointer to a memory allocator. More... | |
size_t | len_ |
Length of the ACE_String_Base data (not counting the trailing '\0'). More... | |
size_t | buf_len_ |
Length of the ACE_String_Base data buffer. More... | |
CHAR * | rep_ |
Pointer to data. More... | |
int | release_ |
Flag that indicates if we own the memory. More... | |
Static Protected Attributes | |
CHAR | NULL_String_ = '\0' |
Represents the "NULL" string to simplify the internal logic. More... |
This class uses an ACE_Allocator to allocate memory. The user can make this a persistant class by providing an ACE_Allocator with a persistable memory pool. This class is optimized for efficiency, so it doesn't provide any internal locking. NOTE: if an instance of this class is constructed from or assigned an empty string (with first element of '\0'), then it is not allocated new space. Instead, its internal representation is set equal to a global empty string. CAUTION: in cases when ACE_String_Base is constructed from a provided buffer with the release parameter set to 0, ACE_String_Base is not guaranteed to be '\0' terminated.
|
Default constructor.
|
|
Constructor that copies s into dynamically allocated memory. If release is non-0 then the ACE_Allocator is responsible for freeing this memory. Memory is _not_ allocated/freed if release is 0.
|
|
Constructor that copies len CHARs of s into dynamically allocated memory (will zero terminate the result). If release is non-0 then the ACE_allocator is responsible for freeing this memory. Memory is _not_ allocated/freed if release is 0.
|
|
Copy constructor.
|
|
Constructor that copies c into dynamically allocated memory.
|
|
Constructor that dynamically allocate len long of char array and initialize it to c using alloc to allocate the memory.
|
|
Deletes the memory...
|
|
Same as STL String's <c_str> and <fast_re. p>. |
|
Clear this string. Memory is _not_ freed if <release> is 0.
|
|
Performs a strncmp comparison.
|
|
Dump the state of an object.
|
|
Get at the underlying representation directly! _Don't_ even think about casting the result to (char *) and modifying it, if it has length 0!
|
|
Find c starting at pos. Returns the slot of the first location that matches (will be >= pos), else npos.
|
|
Find s starting at pos. Returns the slot of the first location that matches (will be >= pos), else npos.
|
|
Find <str> starting at pos. Returns the slot of the first location that matches (will be >= pos), else npos.
|
|
Returns a hash value for this string.
|
|
Return the length of the string.
|
|
Inequality comparison operator.
|
|
Concat operator (copies memory).
|
|
Less than comparison operator.
|
|
Assignment operator (does copy memory).
|
|
Equality comparison operator (must match entire string).
|
|
Greater than comparison operator.
|
|
Return the <slot'th> character by reference in the string (doesn't perform bounds checking).
|
|
Return the <slot'th> character in the string (doesn't perform bounds checking).
|
|
Get a copy of the underlying representation. This method allocates memory for a copy of the string and returns a pointer to the new area. The caller is responsible for freeing the memory when finished; use delete []
|
|
This method is designed for high-performance. Please use with care ;-) If the current size of the string is less than <len>, the string is resized to the new length. The data is zero'd out after this operation.
|
|
Find c starting at pos (counting from the end). Returns the slot of the first location that matches, else npos.
|
|
Copy len bytes of s (will zero terminate the result). Memory is _not_ allocated/freed if release is 0.
|
|
Copy s into this ACE_String_Base. Memory is _not_ allocated/freed if release is 0.
|
|
Comparison operator that will match substrings. Returns the slot of the first location that matches, else -1.
|
|
Same as <substring>.
|
|
Return a substring given an offset and length, if length == -1 use rest of str. Return empty substring if offset or offset/length are invalid.
|
|
Declare the dynamic allocation hooks.
|
|
Pointer to a memory allocator.
|
|
Length of the ACE_String_Base data buffer. Keeping track of the length allows to avoid unnecessary dynamic allocations. |
|
Length of the ACE_String_Base data (not counting the trailing '\0').
|
|
Represents the "NULL" string to simplify the internal logic.
|
|
Flag that indicates if we own the memory.
|
|
Pointer to data.
|