--- parser3/src/include/pa_stack.h 2001/03/07 13:54:46 1.3 +++ parser3/src/include/pa_stack.h 2002/03/18 15:29:46 1.14 @@ -1,12 +1,19 @@ -/* - $Id: pa_stack.h,v 1.3 2001/03/07 13:54:46 paf Exp $ +/** @file + Parser: stack class decl. + + Copyright (c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com) + Author: Alexandr Petrosian (http://paf.design.ru) + + $Id: pa_stack.h,v 1.14 2002/03/18 15:29:46 paf Exp $ */ #ifndef PA_STACK_H #define PA_STACK_H +#include "pa_config_includes.h" #include "pa_array.h" +/// simple stack based on Array class Stack : public Array { public: @@ -24,11 +31,9 @@ public: return get(--ftop); } - Item *operator [] (int top_offset) { - return get(ftop-top_offset-1); - } - - int top() { return ftop-1; } + int top_index() { return ftop-1; } + void top_index(int top_index) { ftop=top_index+1; } + Item *top_value() { return get(top_index()); } private: