Puma Reference Manual | Puma: Puma::Array< Item > Class Template Reference |
Variable length array implementation. More...
#include <Puma/Array.h>
Inherited by Puma::Stack< Item > [private]
.
Public Member Functions | |
Array (long is=default_init_size, long incr=default_increment) | |
Constructor. | |
Array (const Array< Item > &array) | |
Copy-constructor. | |
Array< Item > & | operator= (const Array< Item > ©) |
Assignment operator. | |
~Array () | |
Destructor. | |
void | append (const Item &item) |
Append an item to the array. | |
void | insert (long index, const Item &item) |
Insert an item at the given array index. | |
void | prepend (const Item &item) |
Prepend an item. | |
void | remove (long index) |
Remove the array item at the given array index. | |
void | reset () |
Reset the array. | |
Item & | get (long index) |
Get a reference to the array item at the given array index. | |
Item & | operator[] (long index) |
Get a reference to the array item at the given array index. | |
Item | fetch (long index) const |
Get the array item at the given array index. | |
Item & | lookup (long index) const |
Get a reference to the array item at the given array index. | |
long | length () const |
Get the number of items in the array. | |
template<> | |
void | reset () |
Static Protected Attributes | |
static const long | default_init_size = 5 |
Default array size. | |
static const long | default_increment = 5 |
Default array size increment. |
Variable length array implementation.
Puma::Array< Item >::Array | ( | long | is = default_init_size , |
long | incr = default_increment |
||
) | [inline] |
Constructor.
is | The default size of the array. |
incr | The default increment value. |
Puma::Array< Item >::Array | ( | const Array< Item > & | array | ) |
Copy-constructor.
array | The array to copy. |
Puma::Array< Item >::~Array | ( | ) |
Destructor.
Destroys the array.
void Puma::Array< Item >::append | ( | const Item & | item | ) | [inline] |
Append an item to the array.
item | The item to append. |
Item Puma::Array< Item >::fetch | ( | long | index | ) | const [inline] |
Get the array item at the given array index.
Does not return a reference, thus the item may be implicitely copied.
index | The array index. |
Item & Puma::Array< Item >::get | ( | long | index | ) | [inline] |
Get a reference to the array item at the given array index.
If the index exceeds the array bounds, then the array is reallocated accordingly.
index | The array index. |
void Puma::Array< Item >::insert | ( | long | index, |
const Item & | item | ||
) |
Insert an item at the given array index.
index | The array index. |
item | The item to insert. |
long Puma::Array< Item >::length | ( | ) | const [inline] |
Get the number of items in the array.
Reimplemented in Puma::Stack< Item >, Puma::Stack< CProtection::Type >, Puma::Stack< const char * >, Puma::Stack< Syntax::State >, Puma::Stack< bool >, and Puma::Stack< CTree * >.
Item & Puma::Array< Item >::lookup | ( | long | index | ) | const [inline] |
Get a reference to the array item at the given array index.
index | The array index. |
Array< Item > & Puma::Array< Item >::operator= | ( | const Array< Item > & | copy | ) |
Assignment operator.
copy | The array to copy. |
Item & Puma::Array< Item >::operator[] | ( | long | index | ) | [inline] |
Get a reference to the array item at the given array index.
If the index exceeds the array bounds, then the array is reallocated accordingly.
index | The array index. |
void Puma::Array< Item >::prepend | ( | const Item & | item | ) |
Prepend an item.
item | The item to prepend. |
void Puma::Array< Item >::remove | ( | long | index | ) | [inline] |
Remove the array item at the given array index.
index | The array index. |
void Puma::Array< Item >::reset | ( | ) |
Reset the array.
Destroys the current array.
Reimplemented in Puma::Stack< Item >, Puma::Stack< CProtection::Type >, Puma::Stack< const char * >, Puma::Stack< Syntax::State >, Puma::Stack< bool >, and Puma::Stack< CTree * >.
void Puma::Array< int >::reset | ( | ) | [inline] |
Reimplemented in Puma::Stack< Item >.
const long Puma::Array< Item >::default_increment = 5 [static, protected] |
Default array size increment.
const long Puma::Array< Item >::default_init_size = 5 [static, protected] |
Default array size.