author | llornkcor <llornkcor> | 2002-09-14 02:19:09 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-09-14 02:19:09 (UTC) |
commit | 2d0c1ffcb39f9fac8193ed2e9e93794de0bd7975 (patch) (side-by-side diff) | |
tree | eeed16b5f80dd5883991a7a06133f5f7a6936256 /noncore/apps/opie-reader/my_list.h | |
parent | 5a95ed6a000a56849b8f093deea500214856c626 (diff) | |
download | opie-2d0c1ffcb39f9fac8193ed2e9e93794de0bd7975.zip opie-2d0c1ffcb39f9fac8193ed2e9e93794de0bd7975.tar.gz opie-2d0c1ffcb39f9fac8193ed2e9e93794de0bd7975.tar.bz2 |
update by Tim
Diffstat (limited to 'noncore/apps/opie-reader/my_list.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/apps/opie-reader/my_list.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/noncore/apps/opie-reader/my_list.h b/noncore/apps/opie-reader/my_list.h index b3f0cc0..f180d3d 100644 --- a/noncore/apps/opie-reader/my_list.h +++ b/noncore/apps/opie-reader/my_list.h @@ -19,24 +19,26 @@ class CList ~CList() { if (front != NULL) { while (front != NULL) { node *p = front; front = p->next; delete p; } } } + T& first() { return front->data; } + T& last() { return back->data; } T* operator[](int n) { node* current = front; while (n-- > 0) { if ((current = current->next) == NULL) return NULL; } return &(current->data); } void push_front(const T& t) { @@ -52,24 +54,25 @@ class CList { node* n = new node(t); if (front == NULL) { front = back = n; } else { back->next = n; back = n; } } + bool isEmpty() { return (front == NULL); } void erase(unsigned int n) { node* p = front; node* last = front; while (n-- > 0) { last = p; p = p->next; if (p == NULL) return; } if (p == front) { @@ -146,27 +149,35 @@ class CList { current = current->next; return *this; } T operator*() { return current->data; } T* operator->() { return &(current->data); } + T* pContent() + { + return &(current->data); + } bool operator!=(iterator t) { return (current != t.current); } + bool operator==(iterator t) + { + return (current == t.current); + } }; iterator begin() { return iterator(front); } iterator end() { return iterator(NULL); } }; #endif |