vhdlscanner.h

Go to the documentation of this file.
00001 /******************************************************************************
00002  *
00003  * $Id: vhdlscanner.h,v 1.9 2001/03/19 19:27:39 root Exp $
00004  *
00005  * Copyright (C) 1997-2008 by Dimitri van Heesch.
00006  *
00007  * Permission to use, copy, modify, and distribute this software and its
00008  * documentation under the terms of the GNU General Public License is hereby 
00009  * granted. No representations are made about the suitability of this software 
00010  * for any purpose. It is provided "as is" without express or implied warranty.
00011  * See the GNU General Public License for more details.
00012  *
00013  * Documents produced by Doxygen are derivative works derived from the
00014  * input used in their production; they are not affected by this license.
00015  *
00016  */
00017 
00018 #ifndef VHDLSCANNER_H
00019 #define VHDLSCANNER_H
00020 
00021 #include "parserintf.h"
00022 #include <stdio.h>
00023 #include <stdlib.h>
00024 #include <assert.h>
00025 #include <ctype.h>
00026 
00027 #include <qarray.h>
00028 #include <unistd.h>
00029 #include <qfile.h>
00030 #include <qdict.h>
00031 
00032 #include "entry.h"
00033 #include "memberlist.h"
00034 
00035 #if 0
00036 #include "qcstring.h"
00037 #include "qlist.h"
00038 #include "qstringlist.h"
00039 #include "filedef.h"
00040 #include "classlist.h"
00041 #include "classdef.h"
00042 #include "translator.h"
00043 #include "qregexp.h"
00044 #include "outputlist.h"
00045 #include "membername.h"
00046 #include "memberdef.h"
00047 #include "memberlist.h"
00048 #endif
00049 
00050 class Entry;
00051 class ClassSDict;
00052 class FileStorage;
00053 class ClassDef;
00054 class MemberDef;
00055 class QStringList;
00056 
00057 
00062 class VHDLLanguageScanner : public ParserInterface
00063 {
00064   public:
00065     virtual ~VHDLLanguageScanner() {}
00066     void parseInput(const char * fileName, 
00067                     const char *fileBuf, 
00068                     Entry *root);
00069     bool needsPreprocessing(const QCString &extension);
00070     void parseCode(CodeOutputInterface &codeOutIntf,
00071                    const char *scopeName,
00072                    const QCString &input,
00073                    bool isExampleBlock,
00074                    const char *exampleName=0,
00075                    FileDef *fileDef=0,
00076                    int startLine=-1,
00077                    int endLine=-1,
00078                    bool inlineFragment=FALSE,
00079                    MemberDef *memberDef=0
00080                   );
00081     void resetCodeParserState();
00082     void parsePrototype(const char *text);
00083 };
00084 
00085 void vhdlscanFreeScanner();
00086 
00087 //---------------------------------------------------------------------------------
00088 
00089 #endif



Generated on Mon Mar 31 10:58:50 2008 by  doxygen 1.5.1