diff options
author | Francis Dupont <fdupont@isc.org> | 2020-04-24 14:57:23 +0200 |
---|---|---|
committer | Francis Dupont <fdupont@isc.org> | 2020-04-24 14:57:23 +0200 |
commit | 0129727111b06f60bdae96113bde19b3a25077cb (patch) | |
tree | 9782dfacc67bb64dec1eb9c2ca47d715f669c65b /src/bin/dhcp4/position.hh | |
parent | [#1185] Removed extra spaces (diff) | |
download | kea-0129727111b06f60bdae96113bde19b3a25077cb.tar.xz kea-0129727111b06f60bdae96113bde19b3a25077cb.zip |
[#1185] Regen flex and bison
Diffstat (limited to 'src/bin/dhcp4/position.hh')
-rw-r--r-- | src/bin/dhcp4/position.hh | 192 |
1 files changed, 12 insertions, 180 deletions
diff --git a/src/bin/dhcp4/position.hh b/src/bin/dhcp4/position.hh index c60fabbdf8..add5b83242 100644 --- a/src/bin/dhcp4/position.hh +++ b/src/bin/dhcp4/position.hh @@ -1,180 +1,12 @@ -// A Bison parser, made by GNU Bison 3.0.4. - -// Positions for Bison parsers in C++ - -// 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/>. - -// As a special exception, you may create a larger work that contains -// part or all of the Bison parser skeleton and distribute that work -// under terms of your choice, so long as that work isn't itself a -// parser generator using the skeleton or a modified version thereof -// as a parser skeleton. Alternatively, if you modify or redistribute -// the parser skeleton itself, you may (at your option) remove this -// special exception, which will cause the skeleton and the resulting -// Bison output files to be licensed under the GNU General Public -// License without this special exception. - -// This special exception was added by the Free Software Foundation in -// version 2.2 of Bison. - -/** - ** \file position.hh - ** Define the isc::dhcp::position class. - */ - -#ifndef YY_PARSER4_POSITION_HH_INCLUDED -# define YY_PARSER4_POSITION_HH_INCLUDED - -# include <algorithm> // std::max -# include <iostream> -# include <string> - -# ifndef YY_NULLPTR -# if defined __cplusplus && 201103L <= __cplusplus -# define YY_NULLPTR nullptr -# else -# define YY_NULLPTR 0 -# endif -# endif - -#line 14 "dhcp4_parser.yy" // location.cc:296 -namespace isc { namespace dhcp { -#line 56 "position.hh" // location.cc:296 - /// Abstract a position. - class position - { - public: - /// Construct a position. - explicit position (std::string* f = YY_NULLPTR, - unsigned int l = 1u, - unsigned int c = 1u) - : filename (f) - , line (l) - , column (c) - { - } - - - /// Initialization. - void initialize (std::string* fn = YY_NULLPTR, - unsigned int l = 1u, - unsigned int c = 1u) - { - filename = fn; - line = l; - column = c; - } - - /** \name Line and Column related manipulators - ** \{ */ - /// (line related) Advance to the COUNT next lines. - void lines (int count = 1) - { - if (count) - { - column = 1u; - line = add_ (line, count, 1); - } - } - - /// (column related) Advance to the COUNT next columns. - void columns (int count = 1) - { - column = add_ (column, count, 1); - } - /** \} */ - - /// File name to which this position refers. - std::string* filename; - /// Current line number. - unsigned int line; - /// Current column number. - unsigned int column; - - private: - /// Compute max(min, lhs+rhs) (provided min <= lhs). - static unsigned int add_ (unsigned int lhs, int rhs, unsigned int min) - { - return (0 < rhs || -static_cast<unsigned int>(rhs) < lhs - ? rhs + lhs - : min); - } - }; - - /// Add \a width columns, in place. - inline position& - operator+= (position& res, int width) - { - res.columns (width); - return res; - } - - /// Add \a width columns. - inline position - operator+ (position res, int width) - { - return res += width; - } - - /// Subtract \a width columns, in place. - inline position& - operator-= (position& res, int width) - { - return res += -width; - } - - /// Subtract \a width columns. - inline position - operator- (position res, int width) - { - return res -= width; - } - - /// Compare two position objects. - inline bool - operator== (const position& pos1, const position& pos2) - { - return (pos1.line == pos2.line - && pos1.column == pos2.column - && (pos1.filename == pos2.filename - || (pos1.filename && pos2.filename - && *pos1.filename == *pos2.filename))); - } - - /// Compare two position objects. - inline bool - operator!= (const position& pos1, const position& pos2) - { - return !(pos1 == pos2); - } - - /** \brief Intercept output stream redirection. - ** \param ostr the destination output stream - ** \param pos a reference to the position to redirect - */ - template <typename YYChar> - inline std::basic_ostream<YYChar>& - operator<< (std::basic_ostream<YYChar>& ostr, const position& pos) - { - if (pos.filename) - ostr << *pos.filename << ':'; - return ostr << pos.line << '.' << pos.column; - } - -#line 14 "dhcp4_parser.yy" // location.cc:296 -} } // isc::dhcp -#line 180 "position.hh" // location.cc:296 -#endif // !YY_PARSER4_POSITION_HH_INCLUDED +// Generated 202004241255 +// A Bison parser, made by GNU Bison 3.5.4. + +// Starting with Bison 3.2, this file is useless: the structure it +// used to define is now defined in "location.hh". +// +// To get rid of this file: +// 1. add '%require "3.2"' (or newer) to your grammar file +// 2. remove references to this file from your build system +// 3. if you used to include it, include "location.hh" instead. + +#include "location.hh" |