aboutsummaryrefslogtreecommitdiffstats
path: root/pyGHDL/libghdl/vhdl/sem_lib.py
diff options
context:
space:
mode:
authorPatrick Lehmann <Patrick.Lehmann@plc2.de>2021-06-17 13:49:20 +0200
committerUnai Martinez-Corral <38422348+umarcor@users.noreply.github.com>2021-06-17 22:53:27 +0100
commitf65fff4d5e3a33e83c633eb20fd367e349f3dc92 (patch)
tree66e3fb6afc69738b28bcaaf908a09c13143615e7 /pyGHDL/libghdl/vhdl/sem_lib.py
parent56f8ca47465a7cc052e80c0ed4bab6fc55eeacba (diff)
downloadghdl-f65fff4d5e3a33e83c633eb20fd367e349f3dc92.tar.gz
ghdl-f65fff4d5e3a33e83c633eb20fd367e349f3dc92.tar.bz2
ghdl-f65fff4d5e3a33e83c633eb20fd367e349f3dc92.zip
Using a decorator to bind libghdl to Python.
Diffstat (limited to 'pyGHDL/libghdl/vhdl/sem_lib.py')
-rw-r--r--pyGHDL/libghdl/vhdl/sem_lib.py22
1 files changed, 11 insertions, 11 deletions
diff --git a/pyGHDL/libghdl/vhdl/sem_lib.py b/pyGHDL/libghdl/vhdl/sem_lib.py
index 3a63724e9..9702302a2 100644
--- a/pyGHDL/libghdl/vhdl/sem_lib.py
+++ b/pyGHDL/libghdl/vhdl/sem_lib.py
@@ -6,9 +6,9 @@
# | .__/ \__, |\____|_| |_|____/|_____(_)_|_|_.__/ \__, |_| |_|\__,_|_|
# |_| |___/ |___/
# =============================================================================
-# Authors:
-# Tristan Gingold
-# Patrick Lehmann
+# Authors:
+# Tristan Gingold
+# Patrick Lehmann
#
# Package module: Python binding and low-level API for shared library 'libghdl'.
#
@@ -34,37 +34,37 @@
from pydecor import export
-from pyGHDL.libghdl import libghdl
-from pyGHDL.libghdl._types import SourceFileEntry
+from pyGHDL.libghdl._types import SourceFileEntry, Iir_Design_File, Iir_Design_Unit
+from pyGHDL.libghdl._decorator import BindToLibGHDL
@export
-def Load_File(File: SourceFileEntry):
+@BindToLibGHDL("vhdl__sem_lib__load_file")
+def Load_File(File: SourceFileEntry) -> Iir_Design_File:
"""
Start to analyse a file (i.e. load and parse it).
:param File: File to analyse.
:return: Return :attr:`~pyGHDL.libghdl.vhdl.nodes.Null_Iir` in case of parse error. Type: ``Iir_Design_File``
"""
- return libghdl.vhdl__sem_lib__load_file(File)
@export
-def Finish_Compilation(Unit, Main: bool = False) -> None:
+@BindToLibGHDL("vhdl__sem_lib__finish_compilation")
+def Finish_Compilation(Unit: Iir_Design_Unit, Main: bool = False) -> None:
"""
Analyze :obj:`Unit`.
:param Unit: Design unit to analyze.
:param Main: Is main unit.
"""
- libghdl.vhdl__sem_lib__finish_compilation(Unit, Main)
@export
-def Free_Dependence_List(Design) -> None:
+@BindToLibGHDL("vhdl__sem_lib__free_dependence_list")
+def Free_Dependence_List(Design: Iir_Design_Unit) -> None:
"""
Free the dependence list of :obj:`Design`.
:param Design: Design unit to free dependencies for.
"""
- libghdl.vhdl__sem_lib__free_dependence_list(Design)