summaryrefslogtreecommitdiffstats
path: root/src/pyscanner.h
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2005-06-15 19:21:39 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2005-06-15 19:21:39 (GMT)
commit7e2f4c794ab68b3e14cca2f40ed1b19926c3de05 (patch)
tree3f2be46d34910503ef3532aa95aa0422e86cd993 /src/pyscanner.h
parent365d0dd98ec1e2cbd7f732a5a9a963e5cf2fbde2 (diff)
downloadDoxygen-7e2f4c794ab68b3e14cca2f40ed1b19926c3de05.zip
Doxygen-7e2f4c794ab68b3e14cca2f40ed1b19926c3de05.tar.gz
Doxygen-7e2f4c794ab68b3e14cca2f40ed1b19926c3de05.tar.bz2
Release-1.4.3-20050615
Diffstat (limited to 'src/pyscanner.h')
-rw-r--r--src/pyscanner.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/pyscanner.h b/src/pyscanner.h
new file mode 100644
index 0000000..6b40ddf
--- /dev/null
+++ b/src/pyscanner.h
@@ -0,0 +1,56 @@
+/******************************************************************************
+ *
+ *
+ *
+ * Copyright (C) 1997-2005 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.
+ *
+ */
+/* This code is based on the work done by the MoxyPyDoxy team
+ * (Linda Leong, Mike Rivera, Kim Truong, and Gabriel Estrada), executed
+ * as part of CS179e (Compiler design project) at the UC Riverside,
+ * under supervision of Peter H. Fröhlic.
+ */
+
+#ifndef PYSCANNER_H
+#define PYSCANNER_H
+
+#include "parserintf.h"
+
+/** \brief Python Language parser using state-based lexical scanning.
+ *
+ * This is the Python language parser for doxygen.
+ */
+class PythonLanguageScanner : public ParserInterface
+{
+ public:
+ void parseInput(const char * fileName,
+ const char *fileBuf,
+ Entry *root);
+ bool needsPreprocessing(const QCString &extension);
+ void parseCode(CodeOutputInterface &codeOutIntf,
+ const char *scopeName,
+ const QCString &input,
+ bool isExampleBlock,
+ const char *exampleName=0,
+ FileDef *fileDef=0,
+ int startLine=-1,
+ int endLine=-1,
+ bool inlineFragment=FALSE,
+ MemberDef *memberDef=0
+ );
+ void resetCodeParserState();
+ void parsePrototype(const char *text);
+ void handleGroupStartCommand(const char *header);
+ void handleGroupEndCommand();
+};
+
+#endif