aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/name_table.ads4
-rw-r--r--src/vhdl/python/libghdl/thin.py9
2 files changed, 13 insertions, 0 deletions
diff --git a/src/name_table.ads b/src/name_table.ads
index 16bfc2bcd..53aedc6dc 100644
--- a/src/name_table.ads
+++ b/src/name_table.ads
@@ -39,6 +39,10 @@ package Name_Table is
-- backslashes are simplified.
function Get_Identifier (Str: String) return Name_Id;
+ -- Likewise, but with a C compatible interface.
+ function Get_Identifier_With_Len (Str : Thin_String_Ptr; Len : Natural)
+ return Name_Id;
+
-- Get the string associed to a name. The first bound is 1.
-- If the name is a character, then single quote are added.
function Image (Id: Name_Id) return String;
diff --git a/src/vhdl/python/libghdl/thin.py b/src/vhdl/python/libghdl/thin.py
index f8b5f3eac..6565045f6 100644
--- a/src/vhdl/python/libghdl/thin.py
+++ b/src/vhdl/python/libghdl/thin.py
@@ -42,6 +42,10 @@ location_File_Line_To_Col = libghdl.files_map__location_file_line_to_col
Get_File_Buffer = libghdl.files_map__get_file_buffer
Get_File_Buffer.restype = c_char_p
+Read_Source_File = libghdl.files_map__read_source_file
+
+No_Source_File_Entry = 0
+
# Names
Get_Name_Length = libghdl.name_table__get_name_length
@@ -49,6 +53,11 @@ Get_Name_Length = libghdl.name_table__get_name_length
Get_Name_Ptr = libghdl.name_table__get_name_ptr
Get_Name_Ptr.restype = c_char_p
+_Get_Identifier_With_Len = libghdl.name_table__get_identifier_with_len
+
+def Get_Identifier(s):
+ return _Get_Identifier_With_Len(c_char_p(s), len(s))
+
# std.standard
Standard_Package = c_int32.in_dll(libghdl, "std_package__standard_package")