Hosted by
|
with Ada.Text_IO; use Ada.Text_IO;
with Strings; use Strings;
package Writers is
type Writer is tagged limited record
Filename : String_Access;
File : File_Type;
Whitespace : Character := ' ';
String_Quote : Character := '"';
end record;
type Writer_Access is access Writer;
procedure Initialize
(This : access Writer'Class);
procedure Initialize
(This : access Writer'Class;
Filename : in String);
procedure Finalize
(This : access Writer'Class);
function Current_Output
return Writer_Access;
function Create
(Filename : in String)
return Writer_Access;
procedure Close
(This : in out Writer_Access);
procedure Unknown_Tag_Error
(Context : in String;
Tag : in String);
procedure Put
(This : access Writer'Class;
Text : in Character);
procedure Put
(This : access Writer'Class;
Text : in String);
procedure Put_Line
(This : access Writer'Class;
Text : in String);
procedure New_Line
(This : access Writer'Class);
procedure Write_Whitespace
(This : access Writer'Class);
procedure Write_Word
(This : access Writer'Class;
Text : in String);
procedure Write_String
(This : access Writer'Class;
Text : in String);
end Writers;
|