diff options
author | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2011-11-17 21:22:48 (GMT) |
---|---|---|
committer | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2011-11-17 21:22:48 (GMT) |
commit | b9e362903872f0313e6e26154aacc6c185a9b31d (patch) | |
tree | 0c7c3ab3d6f38e212b2cd4a4628e3c9d32d49db3 /src/vhdlscanner.h | |
parent | 169834ef89a1df22c8f72a01b6a9413bbb57edb5 (diff) | |
download | Doxygen-b9e362903872f0313e6e26154aacc6c185a9b31d.zip Doxygen-b9e362903872f0313e6e26154aacc6c185a9b31d.tar.gz Doxygen-b9e362903872f0313e6e26154aacc6c185a9b31d.tar.bz2 |
Release-1.7.5.1-20111117
Diffstat (limited to 'src/vhdlscanner.h')
-rw-r--r-- | src/vhdlscanner.h | 60 |
1 files changed, 58 insertions, 2 deletions
diff --git a/src/vhdlscanner.h b/src/vhdlscanner.h index 9a80b42..197de40 100644 --- a/src/vhdlscanner.h +++ b/src/vhdlscanner.h @@ -2,7 +2,7 @@ * * * - * Copyright (C) 1997-2011 by Dimitri van Heesch. + * Copyright (C) 1997-2010 by Dimitri van Heesch. * * Permission to use, copy, modify, and distribute this software and its * documentation under the terms of the GNU General Public License is hereby @@ -68,8 +68,64 @@ class VHDLLanguageScanner : public ParserInterface void parsePrototype(const char *text); }; +// container for vhdlscanner +struct s_contVhdl +{ + int yyLineNr; // current line no + int iLine; // line no of last t_identifier + QCString qstr; // t_identifier + QCString fileName; // current file + Entry* root; // root +}; + +struct ConfNode +{ + ConfNode *prevNode; + ConfNode(const char* a,const char* b,const char* config) + { + arch=a; // architecture e.g. for iobuffer + binding=b; // binding e.g. use entiy work.xxx(bev) + confVhdl=config; // configuration foo is bar + isBind=false; + prevNode=NULL; + isRoot=false; + isInlineConf=false; // primary configuration? + }; + + QCString confVhdl; + QCString arch; + QCString binding; + QList<ConfNode> confN; + bool isBind; + bool isInlineConf; + bool isRoot; + + void addNode(ConfNode* n) { confN.append(n); } + bool isBinding() { return binding.isEmpty(); } +} ; + +// returns the current conpound entity,architecture, package,package body +Entry* getVhdlCompound(); + +// return the current parsed entry +Entry* getCurrentVhdlEntry(); + +void newVhdlEntry(); + +void initVhdlParser(); + +struct s_contVhdl* getVhdlCont(); + +// returns the parsed line +// @ param object index of vhdl keyword like t_Identifier t_Entity +int getParsedLine(int object); + void vhdlscanFreeScanner(); -//--------------------------------------------------------------------------------- +// return the list of component instantiations e.g. foo: component bar +QList<Entry> & getVhdlInstList(); + +// returns the list of found configurations +QList<ConfNode>& getVhdlConfiguration(); #endif |