summaryrefslogtreecommitdiffstats
path: root/src/fortranscanner.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/fortranscanner.h')
-rw-r--r--src/fortranscanner.h22
1 files changed, 19 insertions, 3 deletions
diff --git a/src/fortranscanner.h b/src/fortranscanner.h
index a504abc..ec0d312 100644
--- a/src/fortranscanner.h
+++ b/src/fortranscanner.h
@@ -19,6 +19,7 @@
#define SCANNER_FORTRAN_H
#include "parserintf.h"
+#include "util.h"
/** \brief Fortran language parser using state-based lexical scanning.
*
@@ -27,9 +28,10 @@
class FortranLanguageScanner : public ParserInterface
{
public:
- virtual ~FortranLanguageScanner() {}
+ FortranLanguageScanner(void) { codeType = FORTRAN_UNKNOWN;}
+ virtual ~FortranLanguageScanner(void) {}
void startTranslationUnit(const char *) {}
- void finishTranslationUnit() {}
+ void finishTranslationUnit(void) {}
void parseInput(const char *fileName,
const char *fileBuf,
Entry *root,
@@ -51,8 +53,22 @@ class FortranLanguageScanner : public ParserInterface
Definition *searchCtx=0,
bool collectXRefs=TRUE
);
- void resetCodeParserState();
+ void resetCodeParserState(void);
void parsePrototype(const char *text);
+
+ FortranKind codeType;
+};
+
+class FortranLanguageScannerFree : public FortranLanguageScanner
+{
+ public:
+ FortranLanguageScannerFree(void) { codeType = FORTRAN_FREE; }
+};
+
+class FortranLanguageScannerFixed : public FortranLanguageScanner
+{
+ public:
+ FortranLanguageScannerFixed(void) { codeType = FORTRAN_FIXED; }
};
#endif