summaryrefslogtreecommitdiffstats
path: root/src/fortrancode.h
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2019-12-08 10:38:32 (GMT)
committerGitHub <noreply@github.com>2019-12-08 10:38:32 (GMT)
commit0aadb2f3e79f7aec63d8de43534916bb7358f135 (patch)
tree211b939b77c914eea991e4a619fc0ae0e8c5d3d5 /src/fortrancode.h
parentef06c8d14c7889e723331601ac847cc481966f5c (diff)
parent6d4835dbe01a27923db8a1e4559b61da5065cb7a (diff)
downloadDoxygen-0aadb2f3e79f7aec63d8de43534916bb7358f135.zip
Doxygen-0aadb2f3e79f7aec63d8de43534916bb7358f135.tar.gz
Doxygen-0aadb2f3e79f7aec63d8de43534916bb7358f135.tar.bz2
Merge branch 'master' into feature/bug_coverity_unint
Diffstat (limited to 'src/fortrancode.h')
-rw-r--r--src/fortrancode.h46
1 files changed, 39 insertions, 7 deletions
diff --git a/src/fortrancode.h b/src/fortrancode.h
index 4df20a9..8391a0b 100644
--- a/src/fortrancode.h
+++ b/src/fortrancode.h
@@ -18,7 +18,7 @@
#ifndef FORTRANCODE_H
#define FORTRANCODE_H
-#include "types.h"
+#include "parserintf.h"
class CodeOutputInterface;
class FileDef;
@@ -26,13 +26,45 @@ class MemberDef;
class QCString;
class Definition;
-void parseFortranCode(CodeOutputInterface &,const char *,const QCString &,
- bool ,const char *,FileDef *fd,
- int startLine,int endLine,bool inlineFragment,
- const MemberDef *memberDef,bool showLineNumbers,const Definition *searchCtx,
- bool collectRefs, FortranFormat format);
-void resetFortranCodeParserState();
void codeFreeScanner();
const int fixedCommentAfter = 72;
+
+class FortranCodeParser : public CodeParserInterface
+{
+ public:
+ FortranCodeParser(FortranFormat format=FortranFormat_Unknown) : m_format(format) { }
+ void parseCode(CodeOutputInterface &codeOutIntf,
+ const char *scopeName,
+ const QCString &input,
+ SrcLangExt lang,
+ bool isExampleBlock,
+ const char *exampleName=0,
+ FileDef *fileDef=0,
+ int startLine=-1,
+ int endLine=-1,
+ bool inlineFragment=FALSE,
+ const MemberDef *memberDef=0,
+ bool showLineNumbers=TRUE,
+ const Definition *searchCtx=0,
+ bool collectXRefs=TRUE
+ );
+ void resetCodeParserState();
+
+ private:
+ FortranFormat m_format;
+};
+
+class FortranCodeParserFree : public FortranCodeParser
+{
+ public:
+ FortranCodeParserFree() : FortranCodeParser(FortranFormat_Free) { }
+};
+
+class FortranCodeParserFixed : public FortranCodeParser
+{
+ public:
+ FortranCodeParserFixed() : FortranCodeParser(FortranFormat_Fixed) { }
+};
+
#endif