aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/vhdl-formatters.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2019-06-04 18:25:53 +0200
committerTristan Gingold <tgingold@free.fr>2019-06-04 18:25:53 +0200
commit25f61f81547d51ecc3983eb5779813fb94ca90ef (patch)
tree0e23044abd1a51ecf41c362299aebd1b3d6e1525 /src/vhdl/vhdl-formatters.adb
parentf653b8b1328f2ec6d13f221ee6f9817091de91f6 (diff)
downloadghdl-25f61f81547d51ecc3983eb5779813fb94ca90ef.tar.gz
ghdl-25f61f81547d51ecc3983eb5779813fb94ca90ef.tar.bz2
ghdl-25f61f81547d51ecc3983eb5779813fb94ca90ef.zip
vhdl: adjust formatters and add python bindings.
Diffstat (limited to 'src/vhdl/vhdl-formatters.adb')
-rw-r--r--src/vhdl/vhdl-formatters.adb15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/vhdl/vhdl-formatters.adb b/src/vhdl/vhdl-formatters.adb
index 99d80f856..f6103f571 100644
--- a/src/vhdl/vhdl-formatters.adb
+++ b/src/vhdl/vhdl-formatters.adb
@@ -260,6 +260,9 @@ package body Vhdl.Formatters is
Init (Ctxt, Sfe);
Prints.Disp_Vhdl (Ctxt, F);
+ Close_File;
+ Scanner.Flag_Comment := False;
+ Scanner.Flag_Newline := False;
end Format;
package Indent_Disp_Ctxt is
@@ -520,7 +523,7 @@ package body Vhdl.Formatters is
return Grt.Vstrings.Get_C_String (Handle.all);
end Get_C_String;
- procedure Free (Handle : Vstring_Acc)
+ procedure Free_Handle (Handle : Vstring_Acc)
is
procedure Deallocate is new Ada.Unchecked_Deallocation
(Grt.Vstrings.Vstring, Vstring_Acc);
@@ -529,7 +532,7 @@ package body Vhdl.Formatters is
Grt.Vstrings.Free (Handle.all);
Handle1 := Handle;
Deallocate (Handle1);
- end Free;
+ end Free_Handle;
procedure Indent_String (F : Iir_Design_File;
Handle : Vstring_Acc;
@@ -542,6 +545,10 @@ package body Vhdl.Formatters is
begin
Init (Ctxt, Handle, Sfe, First_Line, Last_Line);
Prints.Disp_Vhdl (Ctxt, F);
+
+ Close_File;
+ Scanner.Flag_Comment := False;
+ Scanner.Flag_Newline := False;
end Indent_String;
procedure Indent (F : Iir_Design_File;
@@ -570,10 +577,8 @@ package body Vhdl.Formatters is
Res := Get_C_String (Handle);
Len := Get_Length (Handle);
Simple_IO.Put (Res (1 .. Len));
- Free (Handle);
+ Free_Handle (Handle);
end;
end if;
end Indent;
-
-
end Vhdl.Formatters;