1 // Copyright (c) 1994 James Clark
2 // See the file COPYING for copying permission.
3 #pragma ident "%Z%%M% %I% %E% SMI"
6 #define IList_INCLUDED 1
11 namespace SP_NAMESPACE
{
14 template<class T
> class IListIter
;
16 // This owns the objects that are put in it.
19 class IList
: private IListBase
{
22 IList(T
*p
) : IListBase(p
) { }
24 void append(T
*p
) { IListBase::append(p
); }
25 void insert(T
*p
) { IListBase::insert(p
); }
26 void remove(T
*p
) { IListBase::remove(p
); }
27 void swap(IList
<T
> &list
) { IListBase::swap(list
); }
28 T
*head() const { return (T
*)IListBase::head(); }
29 T
*get() { return (T
*)IListBase::get(); }
32 friend class IListIter
<T
>;
34 IList(const IList
<T
> &); // undefined
35 IList
<T
> &operator=(const IList
<T
> &); // undefined
42 #endif /* not IList_INCLUDED */