Puma::CT_List Class Reference
#include <Puma/CTree.h>
List of all members.
Detailed Description
Base class for tree nodes representing lists.
|
Public Types |
| enum | {
OPEN = 1,
CLOSE = 2,
OPEN_CLOSE = 3,
SEPARATORS = 4,
FORCE_EMPTY = 8,
END_SEP = 16,
NO_LAST_SEP = 32,
INTRO = 64
} |
Public Member Functions |
| int | Entries () const |
| CTree * | Entry (int n) const |
| int | Sons () const |
| CTree * | Son (int n) const |
| int | GetProperties () const |
| void | AddProperties (int p) |
| void | AddSon (CTree *s) |
| void | PrefixSon (CTree *s) |
| void | InsertSon (CTree *before, CTree *son) |
| void | ReplaceSon (CTree *old_son, CTree *new_son) |
| void | RemoveSon (CTree *son) |
| void | InsertSon (int idx, CTree *s) |
| void | ReplaceSon (int idx, CTree *s) |
| void | RemoveSon (int idx) |
Protected Member Functions |
| | CT_List (int size=5, int incr=5, int props=0) |
Member Enumeration Documentation
List properties.
- Enumerator:
-
| OPEN |
|
| CLOSE |
List has a start token, like ':' in ":a(1),b(2)" |
| OPEN_CLOSE |
List has an end token |
| SEPARATORS |
List has opening and closing delimiters, like '(' and ')' |
| FORCE_EMPTY |
List has separators, like ',' |
| END_SEP |
List pretend to be empty, e.g. for "(void)" |
| NO_LAST_SEP |
List has trailing separator, e.g. "a,b,c," |
| INTRO |
List has no separator before last element, e.g. "(a,b...)" |
Constructor & Destructor Documentation
| Puma::CT_List::CT_List |
( |
int |
size = 5, |
|
|
int |
incr = 5, |
|
|
int |
props = 0 | |
|
) |
| | [inline, protected] |
Constructor.
- Parameters:
-
| size | The initial list size. |
| incr | The initial increment count. |
| props | The list properties (bit array). |
Member Function Documentation
| int Puma::CT_List::Entries |
( |
|
) |
const |
Get the number of list entries.
| CTree* Puma::CT_List::Entry |
( |
int |
n |
) |
const |
Get the n-th list entry.
- Parameters:
-
| n | The index of the entry. |
- Returns:
- The list entry or NULL.
| int Puma::CT_List::Sons |
( |
|
) |
const [inline, virtual] |
| CTree* Puma::CT_List::Son |
( |
int |
n |
) |
const [inline, virtual] |
| int Puma::CT_List::GetProperties |
( |
|
) |
const [inline] |
| void Puma::CT_List::AddProperties |
( |
int |
p |
) |
[inline] |
Add a list property.
- Parameters:
-
| void Puma::CT_List::AddSon |
( |
CTree * |
s |
) |
[inline] |
| void Puma::CT_List::PrefixSon |
( |
CTree * |
s |
) |
[inline] |
Prepend a son.
- Parameters:
-
| void Puma::CT_List::InsertSon |
( |
CTree * |
before, |
|
|
CTree * |
son | |
|
) |
| | |
Insert a son before another son.
- Parameters:
-
| before | The son to insert the new son before. |
| son | The son to insert. |
| void Puma::CT_List::ReplaceSon |
( |
CTree * |
old_son, |
|
|
CTree * |
new_son | |
|
) |
| | [virtual] |
Replace a son.
- Parameters:
-
| old_son | The son to replace. |
| new_son | The new son. |
Reimplemented from Puma::CTree.
| void Puma::CT_List::RemoveSon |
( |
CTree * |
son |
) |
|
Remove a son.
- Parameters:
-
| void Puma::CT_List::InsertSon |
( |
int |
idx, |
|
|
CTree * |
s | |
|
) |
| | [inline] |
Insert a son at the given index.
- Parameters:
-
| idx | The index at which to insert. |
| s | The son to insert. |
| void Puma::CT_List::ReplaceSon |
( |
int |
idx, |
|
|
CTree * |
s | |
|
) |
| | [inline] |
Replace the son at the given index.
- Parameters:
-
| idx | The index of the son to replace. |
| s | The new son. |
| void Puma::CT_List::RemoveSon |
( |
int |
idx |
) |
[inline] |
Remove the son at the given index.
- Parameters:
-
| idx | The index of the son to remove. |