# C++ skeleton for Bison
-# Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
-# 2010 Free Software Foundation, Inc.
+# Copyright (C) 2002-2012 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# along with this program. If not, see <http://www.gnu.org/licenses/>.
m4_pushdef([b4_copyright_years],
- [2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010])
+ [2002-2012])
# We do want M4 expansion after # for CPP macros.
m4_changecom()
@output(b4_dir_prefix[]stack.hh@)@
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.
+ */
-#include <deque>
+]b4_cpp_guard_open([b4_dir_prefix[]stack.hh])[
+
+# include <deque>
]b4_namespace_open[
template <class T, class S = std::deque<T> >
pop (unsigned int n = 1)
{
for (; n; --n)
- seq_.pop_front ();
+ seq_.pop_front ();
}
inline
{
public:
slice (const S& stack, unsigned int range)
- : stack_ (stack),
- range_ (range)
+ : stack_ (stack)
+ , range_ (range)
{
}
};
]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([#])