summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-reader/my_list.h
Side-by-side diff
Diffstat (limited to 'noncore/apps/opie-reader/my_list.h') (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/opie-reader/my_list.h11
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
@@ -25,12 +25,14 @@ class CList
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)
@@ -58,12 +60,13 @@ class CList
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)
{
@@ -152,16 +155,24 @@ class CList
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()