summaryrefslogtreecommitdiffstats
path: root/src/vhdlscanner.h
diff options
context:
space:
mode:
authordimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2011-11-17 21:22:48 (GMT)
committerdimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7>2011-11-17 21:22:48 (GMT)
commitb9e362903872f0313e6e26154aacc6c185a9b31d (patch)
tree0c7c3ab3d6f38e212b2cd4a4628e3c9d32d49db3 /src/vhdlscanner.h
parent169834ef89a1df22c8f72a01b6a9413bbb57edb5 (diff)
downloadDoxygen-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.h60
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