home *** CD-ROM | disk | FTP | other *** search
- #ifndef __LINKLIST_H
- #define __LINKLIST_H
-
- // ╔════════════════════════════════════════════════╗
- // ║ Linklist.h, linklist.cpp ║
- // ╟────────────────────────────────────────────────╢
- // ║ Linked list ║
- // ╟────────────────────────────────────────────────╢
- // ║ Written by Gus Smedstad ║
- // ╟────────────────────────────────────────────────╢
- // ║ Copyright 1990-91 NoGate Consulting ║
- // ╚════════════════════════════════════════════════╝
-
- #ifndef __ABSLIST_H
- #include "abslist.h"
- #endif
-
- class linked_list : public abstract_list {
- friend link_index;
- public:
- virtual void put(containable *arg);
- containable *remove(containable *arg);
- };
-
- class link_index : public abstract_index {
- friend linked_list;
- void put(link_node *arg) { abstract_index::put(arg); };
- public:
- link_index(linked_list& base) : abstract_index(base) {};
- void put(containable *arg); // put arg after current item. If
- // current item is NULL, put at start.
- virtual void destroy();
- virtual void operator -- ( int );
- };
-
- #endif
-