Root/
Source at commit 1322 created 12 years 8 months ago. By meklort, Add doxygen to utils folder | |
---|---|
1 | /******************************************************************************␊ |
2 | *␊ |
3 | * $Id: vhdlscanner.h,v 1.9 2001/03/19 19:27:39 root Exp $␊ |
4 | *␊ |
5 | * Copyright (C) 1997-2011 by Dimitri van Heesch.␊ |
6 | *␊ |
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.␊ |
12 | *␊ |
13 | * Documents produced by Doxygen are derivative works derived from the␊ |
14 | * input used in their production; they are not affected by this license.␊ |
15 | *␊ |
16 | */␊ |
17 | ␊ |
18 | #ifndef VHDLSCANNER_H␊ |
19 | #define VHDLSCANNER_H␊ |
20 | ␊ |
21 | #include "parserintf.h"␊ |
22 | #include <stdio.h>␊ |
23 | #include <stdlib.h>␊ |
24 | #include <assert.h>␊ |
25 | #include <ctype.h>␊ |
26 | ␊ |
27 | #include <qarray.h>␊ |
28 | #include <unistd.h>␊ |
29 | #include <qfile.h>␊ |
30 | #include <qdict.h>␊ |
31 | ␊ |
32 | #include "entry.h"␊ |
33 | #include "memberlist.h"␊ |
34 | ␊ |
35 | class Entry;␊ |
36 | class ClassSDict;␊ |
37 | class FileStorage;␊ |
38 | class ClassDef;␊ |
39 | class MemberDef;␊ |
40 | class QStringList;␊ |
41 | ␊ |
42 | ␊ |
43 | /** \brief VHDL parser using state-based lexical scanning.␊ |
44 | *␊ |
45 | * This is the VHDL language parser for doxygen.␊ |
46 | */␊ |
47 | class VHDLLanguageScanner : public ParserInterface␊ |
48 | {␊ |
49 | public:␊ |
50 | virtual ~VHDLLanguageScanner() {}␊ |
51 | void parseInput(const char * fileName, ␊ |
52 | const char *fileBuf, ␊ |
53 | Entry *root);␊ |
54 | bool needsPreprocessing(const QCString &extension);␊ |
55 | void parseCode(CodeOutputInterface &codeOutIntf,␊ |
56 | const char *scopeName,␊ |
57 | const QCString &input,␊ |
58 | bool isExampleBlock,␊ |
59 | const char *exampleName=0,␊ |
60 | FileDef *fileDef=0,␊ |
61 | int startLine=-1,␊ |
62 | int endLine=-1,␊ |
63 | bool inlineFragment=FALSE,␊ |
64 | MemberDef *memberDef=0,␊ |
65 | bool showLineNumbers=TRUE␊ |
66 | );␊ |
67 | void resetCodeParserState();␊ |
68 | void parsePrototype(const char *text);␊ |
69 | };␊ |
70 | ␊ |
71 | void vhdlscanFreeScanner();␊ |
72 | ␊ |
73 | //---------------------------------------------------------------------------------␊ |
74 | ␊ |
75 | #endif␊ |
76 |