|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 6144 (0x1800)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Detail, seg_046198
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Text_Io, The_Order, Complement_Identifier_Array, Field_Identifier_Array;
package body Detail is
procedure Create_Real_Field
(Item : in out Object; An_Index : in Positive) is
begin
Item := (Kind => Real_Field, Field_Index => An_Index);
end Create_Real_Field;
procedure Create_Real_Complement
(Item : in out Object; An_Index : in Positive) is
begin
Item := (Kind => Real_Complement, Complement_Index => An_Index);
end Create_Real_Complement;
procedure Create_Group (Item : in out Object; Position : in Positive) is
begin
Item := (Kind => Group, Group_Position => Position);
end Create_Group;
procedure Show (Item : in Object) is
begin
Text_Io.Put_Line ("Detail : Kind : " & Detail_Kind'Image (Item.Kind) &
" Image : " & Image (Item));
end Show;
function Is_A_Real_Field (Item : in Object) return Boolean is
begin
return Item.Kind = Real_Field;
end Is_A_Real_Field;
function Is_A_Real_Complement (Item : in Object) return Boolean is
begin
return Item.Kind = Real_Complement;
end Is_A_Real_Complement;
function Is_A_Group_Field (Item : in Object) return Boolean is
begin
return Item.Kind = Group_Field;
end Is_A_Group_Field;
function Is_A_Group_Complement (Item : in Object) return Boolean is
begin
return Item.Kind = Group_Complement;
end Is_A_Group_Complement;
function Exist (Item : in Object) return Boolean is
begin
return Index (Item) /= 0;
end Exist;
function Index (Item : in Object) return Natural is
begin
case Item.Kind is
when Real_Field =>
return Item.Field_Index;
when Real_Complement =>
return Item.Complement_Index;
when Group_Field =>
return Field_Identifier_Array.Index
(Complement_Identifier_Array.Image
(The_Order.Complement (Item.Group_Position)));
when Group_Complement =>
return The_Order.Complement (Item.Group_Position);
when Unknown =>
return 0;
end case;
end Index;
function Image (Item : Object) return String is
begin
case Item.Kind is
when Real_Field =>
return Field_Identifier_Array.Image (Item.Field_Index);
when Real_Complement =>
return Complement_Identifier_Array.Image
(Item.Complement_Index);
when Group_Field =>
return Complement_Identifier_Array.Image
(The_Order.Complement (Item.Group_Position));
when Group_Complement =>
return Complement_Identifier_Array.Image
(The_Order.Complement (Item.Group_Position));
when Unknown =>
return "";
end case;
end Image;
end Detail;
nblk1=5
nid=2
hdr6=8
[0x00] rec0=21 rec1=00 rec2=01 rec3=06c
[0x01] rec0=26 rec1=00 rec2=03 rec3=036
[0x02] rec0=19 rec1=00 rec2=04 rec3=04a
[0x03] rec0=08 rec1=00 rec2=05 rec3=000
[0x04] rec0=c0 rec1=00 rec2=00 rec3=100
tail 0x217487ea8864d7e951a26 0x42a00088462060003
Free Block Chain:
0x2: 0000 00 00 00 0f 80 09 64 20 44 65 74 61 69 6c 3b 09 ┆ d Detail; ┆