|
UCommon
|
String pager for storing lists of NULL terminated strings. More...
#include <memory.h>


Data Structures | |
| class | member |
| Member of string list. More... | |
Public Types | |
|
typedef linked_pointer < StringPager::member > | iterator |
| Convenience typedef for iterative pointer. | |
Public Member Functions | |
| void | add (const char *text) |
| Add text to list. | |
| void | add (char **list) |
| Add list to list. | |
| const char * | at (unsigned item) const |
| StringPager::member * | begin (void) const |
| Get root of pager list. | |
| void | clear (void) |
| Purge all members and release pager member. | |
| unsigned | count (void) const |
| Get the number of items in the pager string list. | |
| virtual bool | filter (char *text, size_t size) |
| Filter text in a derived class. | |
| const char * | get (unsigned item) const |
| Get string item from list. | |
| String | join (const char *prefix=((void *) 0), const char *middle=((void *) 0), const char *suffix=((void *) 0)) |
| char ** | list (void) |
| Gather index list. | |
| operator bool () | |
| operator char ** () | |
| bool | operator! () |
| const char * | operator* () |
| void | operator+= (const char *text) |
| Convenience operator to add to pager and auto-sort. | |
| StringPager & | operator<< (const char *text) |
| Convenience operator to add to pager. | |
| StringPager & | operator= (char **list) |
| StringPager & | operator>> (const char *text) |
| const char * | operator[] (unsigned item) const |
| Return specified member from pager list. | |
| unsigned | pages (void) const |
| Get the number of pages that have been allocated from the real heap. | |
| const char * | pop (void) |
| Remove element from back of list. | |
| const char * | pull (void) |
| Remove element from front of list. | |
| void | push (const char *text) |
| Add text to front of list. | |
| void | push (char **text) |
| Add text list to front of list. | |
| void | set (unsigned item, const char *string) |
| Replace string item in list. | |
| void | set (char **list) |
| Set list to list. | |
| size_t | size (void) const |
| Get the size of a memory page. | |
| void | sort (void) |
| Sort members. | |
| unsigned | split (const char *text, const char *string, unsigned flags=0) |
| unsigned | split (stringex_t &expr, const char *string, unsigned flags=0) |
| StringPager (size_t pagesize=256) | |
| Create a pager with a maximum page size. | |
| StringPager (char **list, size_t pagesize=256) | |
| unsigned | token (const char *text, const char *list, const char *quote=((void *) 0), const char *end=((void *) 0)) |
| Tokenize a string and add each token to the StringPager. | |
Protected Member Functions | |
| virtual const char * | invalid (void) const |
String pager for storing lists of NULL terminated strings.
This is used for accumulating lists which can be destroyed all at once.
| ucommon::StringPager::StringPager | ( | size_t | pagesize = 256 | ) |
Create a pager with a maximum page size.
| size | of pager allocation pages. |
| void ucommon::StringPager::add | ( | const char * | text | ) |
Add text to list.
| text | to add. |
| void ucommon::StringPager::add | ( | char ** | list | ) |
Add list to list.
This is a list of string pointers terminated with NULL.
| list | of text to add. |
| StringPager::member* ucommon::StringPager::begin | ( | void | ) | const [inline] |
| void ucommon::StringPager::clear | ( | void | ) |
Purge all members and release pager member.
The list can then be added to again.
| unsigned ucommon::StringPager::count | ( | void | ) | const [inline] |
Get the number of items in the pager string list.
Reimplemented in ucommon::DirPager.
| virtual bool ucommon::StringPager::filter | ( | char * | text, |
| size_t | size | ||
| ) | [virtual] |
Filter text in a derived class.
The base class filter removes newlines at end of text and filters out empty strings.
| text | to filter. |
| size | of text buffer for transforms. |
Reimplemented in ucommon::DirPager.
| const char* ucommon::StringPager::get | ( | unsigned | item | ) | const |
Get string item from list.
This is useful when StringPager is passed as a pointer and hence inconvenient for the [] operator.
| item | to access. |
Reimplemented in ucommon::DirPager.
| char** ucommon::StringPager::list | ( | void | ) |
Gather index list.
| void ucommon::StringPager::operator+= | ( | const char * | text | ) | [inline] |
| StringPager& ucommon::StringPager::operator<< | ( | const char * | text | ) | [inline] |
| const char* ucommon::StringPager::operator[] | ( | unsigned | item | ) | const [inline] |
Return specified member from pager list.
This is a convenience operator.
| item | to access. |
Reimplemented in ucommon::DirPager.
| unsigned ucommon::StringPager::pages | ( | void | ) | const [inline] |
Get the number of pages that have been allocated from the real heap.
Reimplemented from ucommon::memalloc.
Reimplemented in ucommon::DirPager.
Definition at line 579 of file memory.h.

| const char* ucommon::StringPager::pop | ( | void | ) |
Remove element from back of list.
Does not release memory.
| const char* ucommon::StringPager::pull | ( | void | ) |
Remove element from front of list.
Does not release memory.
| void ucommon::StringPager::push | ( | const char * | text | ) |
Add text to front of list.
| text | to add. |
| void ucommon::StringPager::push | ( | char ** | text | ) |
Add text list to front of list.
| text | to add. |
| void ucommon::StringPager::set | ( | unsigned | item, |
| const char * | string | ||
| ) |
Replace string item in list.
| item | to replace. |
| string | to replace with. |
| void ucommon::StringPager::set | ( | char ** | list | ) |
Set list to list.
This is a list of string pointers terminated with NULL.
| list | of text to set. |
| size_t ucommon::StringPager::size | ( | void | ) | const [inline] |
Get the size of a memory page.
Reimplemented from ucommon::memalloc.
Reimplemented in ucommon::DirPager.
Definition at line 576 of file memory.h.

| unsigned ucommon::StringPager::token | ( | const char * | text, |
| const char * | list, | ||
| const char * | quote = ((void *) 0), |
||
| const char * | end = ((void *) 0) |
||
| ) |
Tokenize a string and add each token to the StringPager.
| text | to tokenize. |
| list | of characters to use as token separators. |
| quote | pairs of characters for quoted text or NULL if not used. |
| end | of line marker characters or NULL if not used. |
1.7.6.1