diff options
author | Tristan Gingold <tgingold@free.fr> | 2023-01-07 12:41:40 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2023-01-09 06:40:10 +0100 |
commit | 8f4b226dd33e46421ed307dbac0cef1e4f6c8489 (patch) | |
tree | 5ab39fa0fb6a1c5a02facfa25d97cf115042a51f /src/grt/grt-to_strings.ads | |
parent | 8c8d9a8bf91d22d4cb7c350a016e0cdcfdae2ef9 (diff) | |
download | ghdl-8f4b226dd33e46421ed307dbac0cef1e4f6c8489.tar.gz ghdl-8f4b226dd33e46421ed307dbac0cef1e4f6c8489.tar.bz2 ghdl-8f4b226dd33e46421ed307dbac0cef1e4f6c8489.zip |
synth: rework value attribute
Diffstat (limited to 'src/grt/grt-to_strings.ads')
-rw-r--r-- | src/grt/grt-to_strings.ads | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/grt/grt-to_strings.ads b/src/grt/grt-to_strings.ads index 184bf8d78..a15a6aaee 100644 --- a/src/grt/grt-to_strings.ads +++ b/src/grt/grt-to_strings.ads @@ -106,4 +106,23 @@ package Grt.To_Strings is function Value_F64 (S : Std_String_Basep; Len : Ghdl_Index_Type; Init_Pos : Ghdl_Index_Type) return Value_F64_Result; + + -- Increase POS to skip leading whitespace characters, decrease LEN to + -- skip trailing whitespaces in string S. + procedure Remove_Whitespaces (S : Std_String_Basep; + Len : in out Ghdl_Index_Type; + Pos : in out Ghdl_Index_Type); + + -- Extract position of numeric literal and unit in string STR. + -- Set IS_REAL if the unit is a real number (presence of '.'). + -- Set UNIT_POS to the position of the first character of the unit name. + -- Set LIT_POS to the position of the first character of the numeric + -- literal (after whitespaces are skipped). + -- Set LIT_END to the position of the next character of the numeric lit. + procedure Ghdl_Value_Physical_Split (Str : Std_String_Basep; + Len : Ghdl_Index_Type; + Is_Real : out Boolean; + Lit_Pos : out Ghdl_Index_Type; + Lit_End : out Ghdl_Index_Type; + Unit_Pos : out Ghdl_Index_Type); end Grt.To_Strings; |