Warning, file /frameworks/kholidays/src/parsers/plan2/holidayscannerplan_p.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* 0002 This file is part of the kholidays library. 0003 0004 SPDX-FileCopyrightText: 2010 John Layt <john@layt.net> 0005 0006 SPDX-License-Identifier: LGPL-2.0-or-later 0007 */ 0008 0009 #ifndef KHOLIDAYS_HOLIDAYSCANNERPLAN_P_H 0010 #define KHOLIDAYS_HOLIDAYSCANNERPLAN_P_H 0011 0012 // Flex expects the signature of yylex to be defined in the macro YY_DECL, and 0013 // the C++ parser expects it to be declared. We can factor both as follows. 0014 0015 #ifndef YY_DECL 0016 0017 #define YY_DECL \ 0018 KHolidays::HolidayParserPlan::token_type KHolidays::HolidayScannerPlan::lex(KHolidays::HolidayParserPlan::semantic_type *yylval, \ 0019 KHolidays::HolidayParserPlan::location_type *yylloc) 0020 #endif 0021 0022 #ifndef __FLEX_LEXER_H 0023 #define yyFlexLexer HolidayScannerFlexLexer 0024 #include "FlexLexer.h" 0025 #undef yyFlexLexer 0026 #endif 0027 0028 #include "holidayparserplan.hpp" 0029 0030 namespace KHolidays 0031 { 0032 /** 0033 * HolidayScannerPlan implementation class 0034 * 0035 * Implements the flex scanner for scanning Plan holiday files as 0036 * implemented in KDE SC 4.5 onwards. This includes extensions to the file 0037 * format to support non-Gregorian calendar systems, metadata, and other new 0038 * features. 0039 * 0040 * Implemented using Flex C++ mode, based on the example at 0041 * https://panthema.net/2007/flex-bison-cpp-example/ which is released to Public Domain. 0042 * 0043 * @internal Private, for internal use only 0044 */ 0045 0046 class HolidayScannerPlan : public HolidayScannerFlexLexer 0047 { 0048 public: 0049 explicit HolidayScannerPlan(std::istream *arg_yyin = nullptr, std::ostream *arg_yyout = nullptr); 0050 0051 ~HolidayScannerPlan() override; 0052 0053 virtual HolidayParserPlan::token_type lex(HolidayParserPlan::semantic_type *yylval, HolidayParserPlan::location_type *yylloc); 0054 0055 void set_debug(bool b); 0056 }; 0057 0058 } // namespace KHolidays 0059 0060 #endif // KHOLIDAYS_HOLIDAYSCANNERPLAN_P_H