annotate gcc/ada/libgnat/a-tienio.ads @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 ------------------------------------------------------------------------------
kono
parents:
diff changeset
2 -- --
kono
parents:
diff changeset
3 -- GNAT RUN-TIME COMPONENTS --
kono
parents:
diff changeset
4 -- --
kono
parents:
diff changeset
5 -- A D A . T E X T _ I O . E N U M E R A T I O N _ I O --
kono
parents:
diff changeset
6 -- --
kono
parents:
diff changeset
7 -- S p e c --
kono
parents:
diff changeset
8 -- --
kono
parents:
diff changeset
9 -- This specification is derived from the Ada Reference Manual for use with --
kono
parents:
diff changeset
10 -- GNAT. In accordance with the copyright of that document, you can freely --
kono
parents:
diff changeset
11 -- copy and modify this specification, provided that if you redistribute a --
kono
parents:
diff changeset
12 -- modified version, any changes that you have made are clearly indicated. --
kono
parents:
diff changeset
13 -- --
kono
parents:
diff changeset
14 ------------------------------------------------------------------------------
kono
parents:
diff changeset
15
kono
parents:
diff changeset
16 -- In Ada 95, the package Ada.Text_IO.Enumeration_IO is a subpackage of
kono
parents:
diff changeset
17 -- Text_IO. This is for compatibility with Ada 83. In GNAT we make it a
kono
parents:
diff changeset
18 -- child package to avoid loading the necessary code if Enumeration_IO is
kono
parents:
diff changeset
19 -- not instantiated. See routine Rtsfind.Check_Text_IO_Special_Unit for a
kono
parents:
diff changeset
20 -- description of how we patch up the difference in semantics so that it
kono
parents:
diff changeset
21 -- is invisible to the Ada programmer.
kono
parents:
diff changeset
22
kono
parents:
diff changeset
23 private generic
kono
parents:
diff changeset
24 type Enum is (<>);
kono
parents:
diff changeset
25
kono
parents:
diff changeset
26 package Ada.Text_IO.Enumeration_IO is
kono
parents:
diff changeset
27
kono
parents:
diff changeset
28 Default_Width : Field := 0;
kono
parents:
diff changeset
29 Default_Setting : Type_Set := Upper_Case;
kono
parents:
diff changeset
30
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
31 procedure Get (File : File_Type; Item : out Enum) with
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
32 Pre => Is_Open (File) and then Mode (File) = In_File,
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
33 Global => (In_Out => File_System);
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
34 procedure Get (Item : out Enum) with
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
35 Post =>
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
36 Line_Length'Old = Line_Length
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
37 and Page_Length'Old = Page_Length,
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
38 Global => (In_Out => File_System);
111
kono
parents:
diff changeset
39
kono
parents:
diff changeset
40 procedure Put
kono
parents:
diff changeset
41 (File : File_Type;
kono
parents:
diff changeset
42 Item : Enum;
kono
parents:
diff changeset
43 Width : Field := Default_Width;
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
44 Set : Type_Set := Default_Setting)
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
45 with
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
46 Pre => Is_Open (File) and then Mode (File) /= In_File,
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
47 Post =>
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
48 Line_Length (File)'Old = Line_Length (File)
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
49 and Page_Length (File)'Old = Page_Length (File),
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
50 Global => (In_Out => File_System);
111
kono
parents:
diff changeset
51
kono
parents:
diff changeset
52 procedure Put
kono
parents:
diff changeset
53 (Item : Enum;
kono
parents:
diff changeset
54 Width : Field := Default_Width;
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
55 Set : Type_Set := Default_Setting)
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
56 with
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
57 Post =>
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
58 Line_Length'Old = Line_Length
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
59 and Page_Length'Old = Page_Length,
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
60 Global => (In_Out => File_System);
111
kono
parents:
diff changeset
61
kono
parents:
diff changeset
62 procedure Get
kono
parents:
diff changeset
63 (From : String;
kono
parents:
diff changeset
64 Item : out Enum;
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
65 Last : out Positive)
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
66 with
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
67 Global => null;
111
kono
parents:
diff changeset
68
kono
parents:
diff changeset
69 procedure Put
kono
parents:
diff changeset
70 (To : out String;
kono
parents:
diff changeset
71 Item : Enum;
145
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
72 Set : Type_Set := Default_Setting)
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
73 with
1830386684a0 gcc-9.2.0
anatofuz
parents: 111
diff changeset
74 Global => null;
111
kono
parents:
diff changeset
75
kono
parents:
diff changeset
76 end Ada.Text_IO.Enumeration_IO;