X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/a9b67b5b1e99b3ec3849c45fe42e5ecb382a314d..3eb4f1a3e62807125a815dc572da9204b5b51865:/data/stack.hh diff --git a/data/stack.hh b/data/stack.hh index e785e808..cea7b41a 100644 --- a/data/stack.hh +++ b/data/stack.hh @@ -22,11 +22,14 @@ m4_pushdef([b4_copyright_years], m4_changecom() m4_divert_push(0)dnl @output(b4_dir_prefix[]stack.hh@)@ -b4_copyright([Stack handling for Bison parsers in C++], - [2002-2012])[ +b4_copyright([Stack handling for Bison parsers in C++])[ -#ifndef BISON_STACK_HH -# define BISON_STACK_HH +/** + ** \file ]b4_dir_prefix[stack.hh + ** Define the ]b4_namespace_ref[::stack class. + */ + +]b4_cpp_guard_open([b4_dir_prefix[]stack.hh])[ # include @@ -39,11 +42,13 @@ b4_copyright([Stack handling for Bison parsers in C++], typedef typename S::reverse_iterator iterator; typedef typename S::const_reverse_iterator const_iterator; - stack () : seq_ () + stack () + : seq_ () { } - stack (unsigned int n) : seq_ (n) + stack (unsigned int n) + : seq_ (n) { } @@ -77,16 +82,28 @@ b4_copyright([Stack handling for Bison parsers in C++], } inline - unsigned int - height () const + typename S::size_type + size () const { return seq_.size (); } - inline const_iterator begin () const { return seq_.rbegin (); } - inline const_iterator end () const { return seq_.rend (); } + inline + const_iterator + begin () const + { + return seq_.rbegin (); + } + + inline + const_iterator + end () const + { + return seq_.rend (); + } private: + /// The wrapped container. S seq_; }; @@ -114,8 +131,7 @@ b4_copyright([Stack handling for Bison parsers in C++], }; ]b4_namespace_close[ -#endif // not BISON_STACK_HH[]dnl -] +]b4_cpp_guard_close([b4_dir_prefix[]stack.hh]) m4_divert_pop(0) m4_popdef([b4_copyright_years])dnl m4_changecom([#])