#ifndef VHDL_FILE_H #define VHDL_FILE_H #include "vhdlparser_global.h" #include "scanner/vhdl_scanner.h" #include "vhdl_element_parser.h" #include #include namespace VHDL_Tools { class VHDL_File { public: VHDL_File(); bool parseFile(const QString& file, bool trashPreviousTree=false); VHDL_Tools::VHDL_AST_Node* getParseTree(); private: VHDL_Tools::vhdl_Scanner *scanner; int makeParseTree(VHDL_Tools::VHDL_AST_Node* rootNode); int parsePackage(VHDL_Tools::VHDL_AST_Node** rootNode,QStack* openBlocksContext); int parseNext(VHDL_Tools::VHDL_AST_Node** rootNode,QStack* openBlocksContext); VHDL_Tools::VHDL_AST_Node* rootNode; }; } #endif // VHDL_FILE_H