REDROOM
PHP 7.4.33
Path:
Logout
Edit File
Size: 2.91 KB
Close
//usr/share/bison/stack.hh
Text
Base64
# C++ skeleton for Bison # Copyright (C) 2002-2015 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 # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. m4_pushdef([b4_copyright_years], [2002-2015]) # b4_stack_define # --------------- m4_define([b4_stack_define], [[ template <class T, class S = std::vector<T> > class stack { public: // Hide our reversed order. typedef typename S::reverse_iterator iterator; typedef typename S::const_reverse_iterator const_iterator; stack () : seq_ () { seq_.reserve (200); } stack (unsigned int n) : seq_ (n) {} inline T& operator[] (unsigned int i) { return seq_[seq_.size () - 1 - i]; } inline const T& operator[] (unsigned int i) const { return seq_[seq_.size () - 1 - i]; } /// Steal the contents of \a t. /// /// Close to move-semantics. inline void push (T& t) { seq_.push_back (T()); operator[](0).move (t); } inline void pop (unsigned int n = 1) { for (; n; --n) seq_.pop_back (); } void clear () { seq_.clear (); } inline 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 (); } private: stack (const stack&); stack& operator= (const stack&); /// The wrapped container. S seq_; }; /// Present a slice of the top of a stack. template <class T, class S = stack<T> > class slice { public: slice (const S& stack, unsigned int range) : stack_ (stack) , range_ (range) {} inline const T& operator [] (unsigned int i) const { return stack_[range_ - i]; } private: const S& stack_; unsigned int range_; }; ]]) b4_defines_if( [b4_output_begin([b4_dir_prefix[]stack.hh]) b4_copyright([Stack handling for Bison parsers in C++])[ /** ** \file ]b4_dir_prefix[stack.hh ** Define the ]b4_namespace_ref[::stack class. */ ]b4_cpp_guard_open([b4_dir_prefix[]stack.hh])[ # include <vector> ]b4_namespace_open[ ]b4_stack_define[ ]b4_namespace_close[ ]b4_cpp_guard_close([b4_dir_prefix[]stack.hh]) b4_output_end() ]) m4_popdef([b4_copyright_years])
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 2 × Files: 17
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
m4sugar
DIR
-
drwxr-xr-x
2025-01-08 05:07:31
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
xslt
DIR
-
drwxr-xr-x
2025-01-08 05:07:31
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
bison.m4
36.33 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
c++-skel.m4
1.12 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
c++.m4
17.31 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
c-like.m4
2.26 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
c-skel.m4
1.12 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
c.m4
24.57 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
glr.c
82.57 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
glr.cc
10.65 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
java-skel.m4
1.12 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
java.m4
9.53 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
lalr1.cc
34.42 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
lalr1.java
34.42 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
location.cc
8.60 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
README
1.97 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
stack.hh
2.91 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
variant.hh
9.69 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
yacc.c
62.35 KB
lrw-r--r--
2019-10-12 12:28:39
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).