Natools

Diff
Login

Differences From Artifact [42192fffa4]:

To Artifact [8c6b5053f5]:


780
781
782
783
784
785
786








787
788
789
790
791
792
793
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801







+
+
+
+
+
+
+
+








   -----------------------
   -- Printer Interface --
   -----------------------

   overriding procedure Open_List (Output : in out Printer) is
   begin
      if Output.Param.Width > 0
        and then Output.Cursor > Output.Param.Width
        and then Output.Cursor > Indent_Width (Output) + 1
      then
         Newline (Output);
         Output.First := True;  --  inhibit extra space or newline
      end if;

      if not Output.First then
         if Output.Param.Newline_At (Output.Previous, Opening) then
            Newline (Output);
         elsif Output.Param.Space_At (Output.Previous, Opening) then
            Output.Stream.Write ((0 => Encodings.Space));
            Output.Cursor := Output.Cursor + 1;
         end if;
946
947
948
949
950
951
952








953
954
955
956
957
958
959
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975







+
+
+
+
+
+
+
+







      end;
   end Append_Atom;


   overriding procedure Close_List (Output : in out Printer) is
   begin
      Output.Indent_Level := Output.Indent_Level - 1;

      if Output.Param.Width > 0
        and then Output.Cursor > Output.Param.Width
        and then Output.Cursor > Indent_Width (Output) + 1
      then
         Newline (Output);
         Output.First := True;  --  inhibit extra space or newline
      end if;

      if not Output.First then
         if Output.Param.Newline_At (Output.Previous, Closing) then
            Newline (Output);
         elsif Output.Param.Space_At (Output.Previous, Closing) then
            Output.Stream.Write ((0 => Encodings.Space));
            Output.Cursor := Output.Cursor + 1;