From ea328fa671fc42569a688c8dfb308d87f42771c3 Mon Sep 17 00:00:00 2001 From: Patrick Lehmann Date: Tue, 22 Jun 2021 19:20:16 +0200 Subject: Prepared for DeferredConstant. --- pyGHDL/cli/DOM.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'pyGHDL/cli/DOM.py') diff --git a/pyGHDL/cli/DOM.py b/pyGHDL/cli/DOM.py index 2feb6aecd..641383686 100755 --- a/pyGHDL/cli/DOM.py +++ b/pyGHDL/cli/DOM.py @@ -9,8 +9,8 @@ from pydecor import export from pyGHDL import GHDLBaseException from pyGHDL.libghdl import LibGHDLException -from pyGHDL.dom import NonStandard from pyGHDL.dom.Common import DOMException +from pyGHDL.dom.NonStandard import Design, Document, Library from pyGHDL.dom.formatting.prettyprint import PrettyPrint, PrettyPrintException __all__ = [] @@ -19,14 +19,16 @@ __api__ = __all__ @export class Application: - _design: NonStandard.Design + _design: Design def __init__(self): - self._design = NonStandard.Design() + self._design = Design() def addFile(self, filename: Path, library: str): - document = NonStandard.Document(filename) - self._design.Documents.append(document) + lib = self._design.GetLibrary(library) + + document = Document(filename) + self._design.AddDocument(document, lib) def prettyPrint(self): PP = PrettyPrint() -- cgit v1.2.3 From c5a4e881debcc75bdb96cdddd4abda10fd778b68 Mon Sep 17 00:00:00 2001 From: Patrick Lehmann Date: Tue, 22 Jun 2021 21:40:20 +0200 Subject: Improved error handling. --- pyGHDL/cli/DOM.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'pyGHDL/cli/DOM.py') diff --git a/pyGHDL/cli/DOM.py b/pyGHDL/cli/DOM.py index 641383686..68af8ec1a 100755 --- a/pyGHDL/cli/DOM.py +++ b/pyGHDL/cli/DOM.py @@ -48,9 +48,15 @@ def handleException(ex): return 5 elif isinstance(ex, DOMException): print("DOM:", ex) + ex2 = ex.__cause__ + if ex2 is not None: + for message in ex2.InternalErrors: + print("libghdl: {message}".format(message=message)) return 4 elif isinstance(ex, LibGHDLException): print("LIB:", ex) + for message in ex.InternalErrors: + print(" {message}".format(message=message)) return 3 elif isinstance(ex, GHDLBaseException): print("GHDL:", ex) -- cgit v1.2.3 From 240b4fdd90a9f3ca04e8e168bffdc92bea2ca3f3 Mon Sep 17 00:00:00 2001 From: Patrick Lehmann Date: Wed, 23 Jun 2021 16:32:45 +0200 Subject: Minor fixes and pinned pyVHDLModel version to v0.10.3. --- pyGHDL/cli/DOM.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pyGHDL/cli/DOM.py') diff --git a/pyGHDL/cli/DOM.py b/pyGHDL/cli/DOM.py index 68af8ec1a..dceafc629 100755 --- a/pyGHDL/cli/DOM.py +++ b/pyGHDL/cli/DOM.py @@ -10,7 +10,7 @@ from pydecor import export from pyGHDL import GHDLBaseException from pyGHDL.libghdl import LibGHDLException from pyGHDL.dom.Common import DOMException -from pyGHDL.dom.NonStandard import Design, Document, Library +from pyGHDL.dom.NonStandard import Design, Document from pyGHDL.dom.formatting.prettyprint import PrettyPrint, PrettyPrintException __all__ = [] @@ -45,7 +45,7 @@ class Application: def handleException(ex): if isinstance(ex, PrettyPrintException): print("PP:", ex) - return 5 + return 0 elif isinstance(ex, DOMException): print("DOM:", ex) ex2 = ex.__cause__ -- cgit v1.2.3