1
0
mirror of https://github.com/Kitware/CMake.git synced 2025-10-20 21:40:15 +08:00

ParserHelper: Move macros to bottom of files

Since the class name is used in the macros, the iwyu tool gets confused
wheter it needs a forward declaration or not.

While editing the files, make sure structs have no typedef.  Also,
remove confusing comments about Java.
This commit is contained in:
Daniel Pfeifer
2017-02-17 22:43:43 +01:00
committed by Brad King
parent 07953c18f3
commit d58d28a941
3 changed files with 22 additions and 36 deletions

View File

@@ -8,27 +8,15 @@
#include <string> #include <string>
#include <vector> #include <vector>
#define YYSTYPE cmCommandArgumentParserHelper::ParserType
#define YYSTYPE_IS_DECLARED
#define YY_EXTRA_TYPE cmCommandArgumentParserHelper*
#define YY_DECL \
int cmCommandArgument_yylex(YYSTYPE* yylvalp, yyscan_t yyscanner)
/** \class cmCommandArgumentParserHelper
* \brief Helper class for parsing java source files
*
* Finds dependencies for java file and list of outputs
*/
class cmMakefile; class cmMakefile;
class cmCommandArgumentParserHelper class cmCommandArgumentParserHelper
{ {
public: public:
typedef struct struct ParserType
{ {
char* str; char* str;
} ParserType; };
cmCommandArgumentParserHelper(); cmCommandArgumentParserHelper();
~cmCommandArgumentParserHelper(); ~cmCommandArgumentParserHelper();
@@ -100,4 +88,10 @@ private:
bool RemoveEmpty; bool RemoveEmpty;
}; };
#define YYSTYPE cmCommandArgumentParserHelper::ParserType
#define YYSTYPE_IS_DECLARED
#define YY_EXTRA_TYPE cmCommandArgumentParserHelper*
#define YY_DECL \
int cmCommandArgument_yylex(YYSTYPE* yylvalp, yyscan_t yyscanner)
#endif #endif

View File

@@ -8,26 +8,18 @@
#include <string> #include <string>
#include <vector> #include <vector>
class cmDependsJavaParserHelper;
#define YYSTYPE cmDependsJavaParserHelper::ParserType
#define YYSTYPE_IS_DECLARED
#define YY_EXTRA_TYPE cmDependsJavaParserHelper*
#define YY_DECL int cmDependsJava_yylex(YYSTYPE* yylvalp, yyscan_t yyscanner)
/** \class cmDependsJavaParserHelper /** \class cmDependsJavaParserHelper
* \brief Helper class for parsing java source files * \brief Helper class for parsing java source files
* *
* Finds dependencies for java file and list of outputs * Finds dependencies for java file and list of outputs
*/ */
class cmDependsJavaParserHelper class cmDependsJavaParserHelper
{ {
public: public:
typedef struct struct ParserType
{ {
char* str; char* str;
} ParserType; };
cmDependsJavaParserHelper(); cmDependsJavaParserHelper();
~cmDependsJavaParserHelper(); ~cmDependsJavaParserHelper();
@@ -96,4 +88,9 @@ private:
void CleanupParser(); void CleanupParser();
}; };
#define YYSTYPE cmDependsJavaParserHelper::ParserType
#define YYSTYPE_IS_DECLARED
#define YY_EXTRA_TYPE cmDependsJavaParserHelper*
#define YY_DECL int cmDependsJava_yylex(YYSTYPE* yylvalp, yyscan_t yyscanner)
#endif #endif

View File

@@ -8,23 +8,13 @@
#include <string> #include <string>
#include <vector> #include <vector>
#define YYSTYPE cmExprParserHelper::ParserType
#define YYSTYPE_IS_DECLARED
#define YY_EXTRA_TYPE cmExprParserHelper*
#define YY_DECL int cmExpr_yylex(YYSTYPE* yylvalp, yyscan_t yyscanner)
/** \class cmExprParserHelper
* \brief Helper class for parsing java source files
*
* Finds dependencies for java file and list of outputs
*/
class cmExprParserHelper class cmExprParserHelper
{ {
public: public:
typedef struct struct ParserType
{ {
int Number; int Number;
} ParserType; };
cmExprParserHelper(); cmExprParserHelper();
~cmExprParserHelper(); ~cmExprParserHelper();
@@ -57,4 +47,9 @@ private:
std::string ErrorString; std::string ErrorString;
}; };
#define YYSTYPE cmExprParserHelper::ParserType
#define YYSTYPE_IS_DECLARED
#define YY_EXTRA_TYPE cmExprParserHelper*
#define YY_DECL int cmExpr_yylex(YYSTYPE* yylvalp, yyscan_t yyscanner)
#endif #endif