aboutsummaryrefslogtreecommitdiffstats
path: root/pyGHDL/libghdl/name_table.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyGHDL/libghdl/name_table.py')
-rw-r--r--pyGHDL/libghdl/name_table.py57
1 files changed, 30 insertions, 27 deletions
diff --git a/pyGHDL/libghdl/name_table.py b/pyGHDL/libghdl/name_table.py
index 72b6dfd8c..4e7e87283 100644
--- a/pyGHDL/libghdl/name_table.py
+++ b/pyGHDL/libghdl/name_table.py
@@ -40,50 +40,53 @@ from pydecor import export
from pyGHDL.libghdl import libghdl
from pyGHDL.libghdl._types import NameId
+__all__ = [
+ 'Null_Identifier'
+]
Null_Identifier = 0
@export
def Get_Name_Length(Id: NameId) -> int:
- """
- Get the length of an identifier denoted by a ``NameId``.
+ """
+ Get the length of an identifier denoted by a ``NameId``.
- :param Id: NameId for the identifier to query.
- :return: Length of the identifier.
- """
- return libghdl.name_table__get_name_length(Id)
+ :param Id: NameId for the identifier to query.
+ :return: Length of the identifier.
+ """
+ return libghdl.name_table__get_name_length(Id)
@export
def Get_Name_Ptr(Id: NameId) -> str:
- """
- Get the address of the first character of ID. The address is valid until
- the next call to Get_Identifier (which may reallocate the string table).
- The string is NUL-terminated (this is done by get_identifier).
+ """
+ Get the address of the first character of ID. The address is valid until
+ the next call to Get_Identifier (which may reallocate the string table).
+ The string is NUL-terminated (this is done by get_identifier).
- :param Id: NameId for the identifier to query.
- :return:
- """
- func = libghdl.name_table__get_name_ptr
- func.restype = c_char_p
+ :param Id: NameId for the identifier to query.
+ :return:
+ """
+ func = libghdl.name_table__get_name_ptr
+ func.restype = c_char_p
- return func(Id).decode("utf-8")
+ return func(Id).decode("utf-8")
@export
def Get_Identifier(string: str) -> NameId:
- """
- Get or create an entry in the name table.
+ """
+ Get or create an entry in the name table.
- .. note::
+ .. note::
- * an identifier is represented in all lower case letter,
- * an extended identifier is represented in backslashes, double internal
- backslashes are simplified.
+ * an identifier is represented in all lower case letter,
+ * an extended identifier is represented in backslashes, double internal
+ backslashes are simplified.
- :param string: String to create or lookup.
- :return: Id in name table.
- """
- string = string.encode("utf-8")
- return libghdl.name_table__get_identifier_with_len(c_char_p(string), len(string))
+ :param string: String to create or lookup.
+ :return: Id in name table.
+ """
+ string = string.encode("utf-8")
+ return libghdl.name_table__get_identifier_with_len(c_char_p(string), len(string))