Public Member Functions | |
InternalNameCollection (const InternalNameCollection ©) | |
void | add_name (const InternalName *name) |
Adds a new InternalName to the collection. More... | |
void | add_names_from (const InternalNameCollection &other) |
Adds all the InternalNames indicated in the other collection to this name. More... | |
void | clear () |
Removes all InternalNames from the collection. More... | |
const InternalName * | get_name (int index) const |
int | get_num_names () const |
bool | has_name (const InternalName *name) const |
Returns true if the indicated InternalName appears in this collection, false otherwise. More... | |
const InternalName * | operator [] (int index) const |
Returns the nth InternalName in the collection. More... | |
InternalNameCollection | operator+ (const InternalNameCollection &other) const |
Returns a InternalNameCollection representing the concatenation of the two lists. More... | |
void | operator+= (const InternalNameCollection &other) |
Appends the other list onto the end of this one. More... | |
void | operator= (const InternalNameCollection ©) |
void | output (std::ostream &out) const |
Writes a brief one-line description of the InternalNameCollection to the indicated output stream. More... | |
void | remove_duplicate_names () |
Removes any duplicate entries of the same InternalNames on this collection. More... | |
bool | remove_name (const InternalName *name) |
Removes the indicated InternalName from the collection. More... | |
void | remove_names_from (const InternalNameCollection &other) |
Removes from this collection all of the InternalNames listed in the other collection. More... | |
int | size () const |
Returns the number of names in the collection. More... | |
void | write (std::ostream &out, int indent_level=0) const |
Writes a complete multi-line description of the InternalNameCollection to the indicated output stream. More... | |
Public Attributes | |
get_name | |
Returns the nth InternalName in the collection. More... | |
get_num_names | |
Returns the number of InternalNames in the collection. More... | |
Definition at line 24 of file internalNameCollection.h.
void InternalNameCollection::add_name | ( | const InternalName * | name | ) |
Adds a new InternalName to the collection.
Definition at line 46 of file internalNameCollection.cxx.
void InternalNameCollection::add_names_from | ( | const InternalNameCollection & | other | ) |
Adds all the InternalNames indicated in the other collection to this name.
The other names are simply appended to the end of the names in this list; duplicates are not automatically removed.
Definition at line 98 of file internalNameCollection.cxx.
References get_num_names.
Referenced by operator+=().
void InternalNameCollection::clear | ( | ) |
Removes all InternalNames from the collection.
Definition at line 167 of file internalNameCollection.cxx.
bool InternalNameCollection::has_name | ( | const InternalName * | name | ) | const |
Returns true if the indicated InternalName appears in this collection, false otherwise.
Definition at line 154 of file internalNameCollection.cxx.
const InternalName * InternalNameCollection::operator [] | ( | int | index | ) | const |
Returns the nth InternalName in the collection.
This is the same as get_name(), but it may be a more convenient way to access it.
Definition at line 194 of file internalNameCollection.cxx.
|
inline |
Returns a InternalNameCollection representing the concatenation of the two lists.
Definition at line 34 of file internalNameCollection.I.
|
inline |
Appends the other list onto the end of this one.
Definition at line 25 of file internalNameCollection.I.
References add_names_from().
void InternalNameCollection::output | ( | std::ostream & | out | ) | const |
Writes a brief one-line description of the InternalNameCollection to the indicated output stream.
Definition at line 214 of file internalNameCollection.cxx.
References get_num_names.
void InternalNameCollection::remove_duplicate_names | ( | ) |
Removes any duplicate entries of the same InternalNames on this collection.
If a InternalName appears multiple times, the first appearance is retained; subsequent appearances are removed.
Definition at line 129 of file internalNameCollection.cxx.
References get_num_names.
bool InternalNameCollection::remove_name | ( | const InternalName * | name | ) |
Removes the indicated InternalName from the collection.
Returns true if the name was removed, false if it was not a member of the collection.
Definition at line 65 of file internalNameCollection.cxx.
void InternalNameCollection::remove_names_from | ( | const InternalNameCollection & | other | ) |
Removes from this collection all of the InternalNames listed in the other collection.
Definition at line 111 of file internalNameCollection.cxx.
References get_num_names.
int InternalNameCollection::size | ( | ) | const |
Returns the number of names in the collection.
This is the same thing as get_num_names().
Definition at line 205 of file internalNameCollection.cxx.
void InternalNameCollection::write | ( | std::ostream & | out, |
int | indent_level = 0 |
||
) | const |
Writes a complete multi-line description of the InternalNameCollection to the indicated output stream.
Definition at line 227 of file internalNameCollection.cxx.
const InternalName * InternalNameCollection::get_name |
Returns the nth InternalName in the collection.
Definition at line 41 of file internalNameCollection.h.
int InternalNameCollection::get_num_names |
Returns the number of InternalNames in the collection.
Definition at line 41 of file internalNameCollection.h.
Referenced by add_names_from(), output(), remove_duplicate_names(), and remove_names_from().