1 /******************************************************************************
3 * $Id: fortranscanner.h,v 1.1 2006/08/23 07:44:03 zdv058 Exp $
5 * Copyright (C) 1997-2012 by Dimitri van Heesch.
7 * Permission to use, copy, modify, and distribute this software and its
8 * documentation under the terms of the GNU General Public License is hereby
9 * granted. No representations are made about the suitability of this software
10 * for any purpose. It is provided "as is" without express or implied warranty.
11 * See the GNU General Public License for more details.
13 * Documents produced by Doxygen are derivative works derived from the
14 * input used in their production; they are not affected by this license.
18 #ifndef SCANNER_FORTRAN_H
19 #define SCANNER_FORTRAN_H
21 #include "parserintf.h"
23 /** \brief Fortran language parser using state-based lexical scanning.
25 * This is the Fortran language parser for doxygen.
27 class FortranLanguageScanner : public ParserInterface
30 virtual ~FortranLanguageScanner() {}
31 void parseInput(const char *fileName,
34 bool needsPreprocessing(const QCString &extension);
35 void parseCode(CodeOutputInterface &codeOutIntf,
36 const char *scopeName,
37 const QCString &input,
39 const char *exampleName=0,
43 bool inlineFragment=FALSE,
44 MemberDef *memberDef=0,
45 bool showLineNumbers=TRUE,
46 Definition *searchCtx=0
48 void resetCodeParserState();
49 void parsePrototype(const char *text);