Natools

Diff
Login

Differences From Artifact [d999b2268e]:

To Artifact [7aa683f6a7]:


1
2
3
4
5
6
7
8
9
------------------------------------------------------------------------------
-- Copyright (c) 2013-2014, Natacha Porté                                   --
--                                                                          --
-- Permission to use, copy, modify, and distribute this software for any    --
-- purpose with or without fee is hereby granted, provided that the above   --
-- copyright notice and this permission notice appear in all copies.        --
--                                                                          --
-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES --
-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF         --

|







1
2
3
4
5
6
7
8
9
------------------------------------------------------------------------------
-- Copyright (c) 2013-2015, Natacha Porté                                   --
--                                                                          --
-- Permission to use, copy, modify, and distribute this software for any    --
-- purpose with or without fee is hereby granted, provided that the above   --
-- copyright notice and this permission notice appear in all copies.        --
--                                                                          --
-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES --
-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF         --
35
36
37
38
39
40
41



42
43
44
45
46
47
48

   type Printer is limited interface;

   procedure Open_List (Output : in out Printer) is abstract;
   procedure Append_Atom (Output : in out Printer; Data : in Atom) is abstract;
   procedure Close_List (Output : in out Printer) is abstract;




   procedure Transfer
     (Source : in out Descriptor'Class;
      Target : in out Printer'Class;
      Check_Level : in Boolean := False);

   type Canonical (Stream : access Ada.Streams.Root_Stream_Type'Class) is
     new Printer with null record;







>
>
>







35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51

   type Printer is limited interface;

   procedure Open_List (Output : in out Printer) is abstract;
   procedure Append_Atom (Output : in out Printer; Data : in Atom) is abstract;
   procedure Close_List (Output : in out Printer) is abstract;


   procedure Append_String (Output : in out Printer'Class; Data : in String);

   procedure Transfer
     (Source : in out Descriptor'Class;
      Target : in out Printer'Class;
      Check_Level : in Boolean := False);

   type Canonical (Stream : access Ada.Streams.Root_Stream_Type'Class) is
     new Printer with null record;