summaryrefslogtreecommitdiffstats
path: root/src/constexp.h
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2019-11-09 16:29:15 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2019-11-09 16:29:15 (GMT)
commit28c738d0319bf5de25bcf6aed90234419feded07 (patch)
tree00a73d746298a6516f287517419f5ea04f331084 /src/constexp.h
parent87b9993978674fbea3804531a897c92f5b513944 (diff)
downloadDoxygen-28c738d0319bf5de25bcf6aed90234419feded07.zip
Doxygen-28c738d0319bf5de25bcf6aed90234419feded07.tar.gz
Doxygen-28c738d0319bf5de25bcf6aed90234419feded07.tar.bz2
Remove global state from constexp lexer
Diffstat (limited to 'src/constexp.h')
-rw-r--r--src/constexp.h23
1 files changed, 8 insertions, 15 deletions
diff --git a/src/constexp.h b/src/constexp.h
index 8bf582e..0b52e14 100644
--- a/src/constexp.h
+++ b/src/constexp.h
@@ -19,24 +19,17 @@
#ifndef _CONSTEXP_H
#define _CONSTEXP_H
-#include "cppvalue.h"
#include <qcstring.h>
-#define YYSTYPE CPPValue
-typedef void* yyscan_t;
-struct constexpYY_state
+class ConstExpressionParser
{
- QCString g_strToken;
- CPPValue g_resultValue;
- int g_constExpLineNr;
- QCString g_constExpFileName;
-
- const char *g_inputString;
- int g_inputPosition;
+ public:
+ ConstExpressionParser();
+ ~ConstExpressionParser();
+ bool parse(const char *fileName,int line,const QCString &expression);
+ private:
+ struct Private;
+ Private *p;
};
-extern bool parseconstexp(const char *fileName,int line,const QCString &s);
-extern int constexpYYparse(yyscan_t);
-extern int constexpYYlex(YYSTYPE *lvalp, yyscan_t);
-struct constexpYY_state* constexpYYget_extra (yyscan_t yyscanner );
#endif