From 05ab076e1c2a9ca16472f9a6b47b8d22914b3783 Mon Sep 17 00:00:00 2001 From: chatty Date: Tue, 22 Dec 1992 17:38:12 +0000 Subject: Added generic stacks --- utils/List.h | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'utils') diff --git a/utils/List.h b/utils/List.h index 9e61c9e..81ed6ba 100644 --- a/utils/List.h +++ b/utils/List.h @@ -166,6 +166,16 @@ inline CcuStackItem* Pop () { return RemoveFirst (); } inline CcuStackItem* Top () { return First (); } }; +#ifndef CPLUS_BUG19 +template class CcuStackOf : public CcuStack { +public: +inline void Push (ITEM* p) { CcuStack::Push (p); } +inline ITEM* Pop () { return (ITEM*) CcuStack::Pop (); } +inline ITEM* Top () { return (ITEM*) CcuStack::Top (); } +inline operator const CcuListOf & () { return *(CcuListOf *) this; } +}; +#endif /* CPLUS_BUG19 */ + typedef CcuListItem CcuQueueItem; /* CPLUS_BUG10 */ @@ -184,7 +194,7 @@ template class CcuQueueOf : public CcuQueue { public: inline void Put (ITEM* p) { CcuQueue::Put (p); } inline ITEM* Get () { return (ITEM*) CcuQueue::Get (); } -inline operator const CcuListOf & () { return *this; } +inline operator const CcuListOf & () { return *(CcuListOf *) this; } }; #endif /* CPLUS_BUG19 */ -- cgit v1.1