109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
+
+
+
+
+
+
+
+
+
+
+
+
+
|
begin
Stream_IO.Set_Index (Object.File, 1);
Stream_IO.Read (Object.File, Result, Last);
pragma Assert (Last = Result'Last);
return Result;
end Read;
function Read (Object : Atom_Reader) return Atom_Refs.Reference is
Length : constant Count := Object.Length;
Result : constant Atom_Refs.Reference
:= Atom_Refs.Create (new Atom (1 .. Length));
Last : Count;
begin
Stream_IO.Set_Index (Object.File, 1);
Stream_IO.Read (Object.File, Result.Update.Data.all, Last);
pragma Assert (Last = Length);
return Result;
end Read;
procedure Read
(Object : in Atom_Reader;
Data : out Atom;
Length : out Count) is
begin
Stream_IO.Set_Index (Object.File, 1);
|