summaryrefslogtreecommitdiff
path: root/src/fortranscanner.h
diff options
context:
space:
mode:
authorAnas Nashif <anas.nashif@intel.com>2012-11-08 06:36:54 -0800
committerAnas Nashif <anas.nashif@intel.com>2012-11-08 06:36:54 -0800
commitcccf3a7c7888ce7bd7a8f8d48a34c5474ad9feeb (patch)
tree7f31b77ace4359e85dc3d3f66c853858c0bca7a4 /src/fortranscanner.h
downloaddoxygen-upstream/1.8.2.tar.gz
doxygen-upstream/1.8.2.tar.bz2
doxygen-upstream/1.8.2.zip
Imported Upstream version 1.8.2upstream/1.8.2
Diffstat (limited to 'src/fortranscanner.h')
-rw-r--r--src/fortranscanner.h52
1 files changed, 52 insertions, 0 deletions
diff --git a/src/fortranscanner.h b/src/fortranscanner.h
new file mode 100644
index 0000000..6aed1bf
--- /dev/null
+++ b/src/fortranscanner.h
@@ -0,0 +1,52 @@
+/******************************************************************************
+ *
+ * $Id: fortranscanner.h,v 1.1 2006/08/23 07:44:03 zdv058 Exp $
+ *
+ * Copyright (C) 1997-2012 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 SCANNER_FORTRAN_H
+#define SCANNER_FORTRAN_H
+
+#include "parserintf.h"
+
+/** \brief Fortran language parser using state-based lexical scanning.
+ *
+ * This is the Fortran language parser for doxygen.
+ */
+class FortranLanguageScanner : public ParserInterface
+{
+ public:
+ virtual ~FortranLanguageScanner() {}
+ 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,
+ bool showLineNumbers=TRUE,
+ Definition *searchCtx=0
+ );
+ void resetCodeParserState();
+ void parsePrototype(const char *text);
+};
+
+#endif