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++])[
/**
** \file ]b4_dir_prefix[stack.hh
** Define the ]b4_namespace_ref[::stack class.
*/
-#ifndef BISON_STACK_HH
-# define BISON_STACK_HH
+]b4_cpp_guard_open([b4_dir_prefix[]stack.hh])[
# include <deque>
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)
{
}
}
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_;
};
};
]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([#])