|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 1706 (0x6aa)
Types: TextFile
Names: »B«
└─⟦85b835f43⟧ Bits:30000549 8mm tape, Rational 1000, Xlib rev 6.00
└─⟦0c20f784e⟧ »DATA«
└─⟦1abbe589f⟧
└─⟦059497ac5⟧
└─⟦this⟧
with Io;
with System;
with Unchecked_Conversions;
procedure Foo_Unchecked is
type Xyz is array (Natural range <>) of Integer;
subtype Foob is Xyz (1 .. 3);
subtype Barb is Xyz (1 .. 4);
function To_Bytes is new Unchecked_Conversions.Convert_To_Byte_String (Xyz);
function From_Bytes is
new Unchecked_Conversions.Convert_From_Byte_String (Barb);
function From_Bytes2 is
new Unchecked_Conversions.Convert_From_Byte_String (Xyz);
A : Foob := (16, -1, 4);
B : constant System.Byte_String := To_Bytes (A);
C : System.Byte_String (1 .. 16) := (0, 0, 0, 32,
255, 255, 255, 254,
0, 0, 0, 27,
255, 255, 255, 0);
D : constant Xyz := From_Bytes (C);
E : System.Byte_String (1 .. 20) := (37, 37,
0, 0, 0, 32,
255, 255, 255, 254,
0, 0, 0, 27,
255, 255, 255, 0,
37, 37);
F : constant Xyz := From_Bytes (E (3 .. 18));
begin
for I in B'Range loop
Io.Put (Natural (B (I)));
Io.New_Line;
end loop;
Io.Put_Line ("------------------");
for I in D'Range loop
Io.Put (D (I));
Io.New_Line;
end loop;
Io.Put_Line ("------------------");
for I in F'Range loop
Io.Put (F (I));
Io.New_Line;
end loop;
end Foo_Unchecked;