summaryrefslogtreecommitdiffstats
path: root/src/constexp_p.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_p.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_p.h')
-rw-r--r--src/constexp_p.h44
1 files changed, 44 insertions, 0 deletions
diff --git a/src/constexp_p.h b/src/constexp_p.h
new file mode 100644
index 0000000..ad09b2d
--- /dev/null
+++ b/src/constexp_p.h
@@ -0,0 +1,44 @@
+/******************************************************************************
+ *
+ * Copyright (C) 1997-2019 by Dimitri van Heesch.
+ *
+ * Permission to use, copy, modify, and distribute this software and its
+ * documentation under the terms of the GNU General Public License is hereby
+ * granted. No representations are made about the suitability of this software
+ * for any purpose. It is provided "as is" without express or implied warranty.
+ * See the GNU General Public License for more details.
+ *
+ * Documents produced by Doxygen are derivative works derived from the
+ * input used in their production; they are not affected by this license.
+ *
+ */
+
+#ifndef _CONSTEXP_P_H
+#define _CONSTEXP_P_H
+
+#include <qcstring.h>
+
+//! @file
+//! @brief Private interface between Parser (constexp.y) and Lexer (constexp.l)
+
+#include "cppvalue.h"
+#define YYSTYPE CPPValue
+
+typedef void* yyscan_t;
+struct constexpYY_state
+{
+ QCString strToken;
+ CPPValue resultValue;
+ int constExpLineNr;
+ QCString constExpFileName;
+
+ const char *inputString;
+ int inputPosition;
+};
+constexpYY_state* constexpYYget_extra(yyscan_t yyscanner );
+
+extern int constexpYYlex(YYSTYPE *lvalp, yyscan_t);
+extern int constexpYYparse(yyscan_t);
+
+
+#endif