Class:nsTDeque: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
mNo edit summary |
||
| Line 19: | Line 19: | ||
*/ | */ | ||
void Clear(); | void Clear(); | ||
| | ||
/** | /** | ||
Latest revision as of 19:06, 18 June 2006
template <class T>
class nsTDeque {
public:
/**
* @constructor
* @param objectsPerPage
* Optional parameter that specifies the number of objects per page
* in the deque.
*/
explicit nsTDeque(PRUint32 objectsPerPage = 32);
/**
* @destructor
*/
~nsTDeque();
/**
* Clear all elements from the deque.
*/
void Clear();
/**
* @returns
* PR_TRUE if the deque contains no elements and PR_FALSE otherwise.
*/
PRBool IsEmpty();
/**
* Adds a new element to the front of the deque.
* @param obj
* The object to be added.
*/
void PushFront(const T& obj);
/**
* Adds a new element using T's default constructor to the front of the
* deque.
* @returns
* The address of the newly added element or null if the object
* could not be allocated.
*/
T* PushFront();
/**
* Adds a new element to the back of the deque.
* @param obj
* The object to be added.
*/
void PushBack(const T& obj);
/**
* Adds a new element using T's default constructor to the back of the
* deque.
* @returns
* The address of the newly added element or null if the object
* could not be allocated.
*/
T* PushBack();
/**
* @returns
* A const reference to the element at the front of the deque.
* It is an error to call this method on an empty deque.
*/
const T& Front() const;
/**
* @returns
* A reference to the element at the front of the deque.
* It is an error to call this method on an empty deque.
*/
T& Front();
/**
* @returns
* A const reference to the element at the back of the deque.
* It is an error to call this method on an empty deque.
*/
const T& Back() const;
/**
* @returns
* A reference to the element at the back of the deque.
* It is an error to call this method on an empty deque.
*/
T& Back();
/**
* Removes the element at the front of the deque. This method
* has no effect if the deque is empty.
*/
void PopFront();
/**
* Removes the element at the back of the deque. This method
* has no effect if the deque is empty.
*/
void PopBack();
};