|
|
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: 12288 (0x3000)
Types: Ada Source
Notes: 03_class, FILE, R1k_Segment, e3_tag, package Condition, seg_047ff5, seg_0482b2, seg_04923d, seg_049a65
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦5a81ac88f⟧ »Space Info Vol 1«
└─⟦this⟧
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦this⟧
with Attribute, Objet, Detail, Expression;
package Condition is
type Node_Kind is (Et, Ou, Single_Attribute, Hero, Place,
Actions, Meet, Belong, Attribute_Exist,
Exits_Exist, Subject_Exist, Unknown);
subtype Operator is Node_Kind range Et .. Ou;
type Compare_Kind is (Equal, Not_Equal, Less, Greater,
Greater_Equal, Less_Equal);
type Binary_Kind is (Yes, No);
type Object is private;
procedure Create (Item : out Object;
Kind : in Operator;
Left, Right : in Object);
procedure Create_Compare (Item : out Object;
An_Attribute : in Attribute.Object;
Symbol : in Compare_Kind;
An_Expression : in Expression.Object;
Ok : out Boolean);
procedure Create_Hero (Item : out Object; A_Hero : in Detail.Object);
procedure Create_Place (Item : out Object; A_Place : in Detail.Object);
procedure Create_Actions (Item : out Object; Number : in Positive);
procedure Create_Meet (Item : out Object; An_Animate : in Detail.Object);
procedure Create_Belong (Item : out Object;
An_Objet : in Objet.Object;
Subject : in Detail.Object;
Binary : in Binary_Kind);
procedure Create_Attribute_Exist (Item : out Object;
An_Attribute : in Attribute.Object;
Binary : in Binary_Kind);
procedure Create_Exits_Exist (Item : out Object;
A_Room : in Objet.Object;
Binary : in Binary_Kind);
procedure Create_Subject_Exist (Item : out Object;
A_Subject : in Detail.Object;
Binary : in Binary_Kind);
procedure Show (Item : in Object);
function Is_Right (Item : in Object) return Boolean;
Null_Object : constant Object;
private
type Node (Kind : Node_Kind := Unknown) is
record
case Kind is
when Et | Ou =>
Left_Node, Right_Node : Object;
when Single_Attribute =>
The_Attribute : Attribute.Object := Attribute.Null_Object;
Compare : Compare_Kind;
Value : Expression.Object := Expression.Null_Object;
when Hero =>
Other_Hero : Detail.Object := Detail.Null_Object;
when Place =>
Other_Place : Detail.Object := Detail.Null_Object;
when Actions =>
Actions_Number : Natural := 0;
when Meet =>
Animate : Detail.Object := Detail.Null_Object;
when Belong =>
Owner : Objet.Object := Objet.Null_Object;
Belong_Subject : Detail.Object := Detail.Null_Object;
Belong_Binary : Binary_Kind;
when Attribute_Exist =>
Exist_Attribute : Attribute.Object := Attribute.Null_Object;
Attribute_Binary : Binary_Kind;
when Exits_Exist =>
Room : Objet.Object := Objet.Null_Object;
Exits_Binary : Binary_Kind;
when Subject_Exist =>
Exist_Subject : Detail.Object := Detail.Null_Object;
Subject_Binary : Binary_Kind;
when Unknown =>
null;
end case;
end record;
type Object is access Node;
Null_Object : constant Object := new Node'(Kind => Unknown);
end Condition;
nblk1=b
nid=6
hdr6=a
[0x00] rec0=17 rec1=00 rec2=01 rec3=050
[0x01] rec0=10 rec1=00 rec2=03 rec3=048
[0x02] rec0=19 rec1=00 rec2=02 rec3=016
[0x03] rec0=17 rec1=00 rec2=05 rec3=01c
[0x04] rec0=01 rec1=00 rec2=04 rec3=000
[0x05] rec0=1b rec1=00 rec2=07 rec3=02e
[0x06] rec0=12 rec1=00 rec2=06 rec3=03a
[0x07] rec0=1d rec1=00 rec2=05 rec3=00a
[0x08] rec0=14 rec1=00 rec2=04 rec3=044
[0x09] rec0=14 rec1=00 rec2=02 rec3=064
[0x0a] rec0=16 rec1=00 rec2=03 rec3=000
tail 0x2174bef7886579a39e27b 0x42a00088462060003
Free Block Chain:
0x6: 0000 00 07 03 fc 80 29 2e 50 75 74 5f 4c 69 6e 65 20 ┆ ).Put_Line ┆
0x7: 0000 00 08 03 fc 80 17 20 53 75 62 6a 65 63 74 20 3a ┆ Subject :┆
0x8: 0000 00 09 03 fc 80 1c 20 20 20 20 20 20 20 41 6e 5f ┆ An_┆
0x9: 0000 00 0a 03 fc 80 07 20 20 62 65 67 69 6e 07 00 3c ┆ begin <┆
0xa: 0000 00 0b 03 fc 80 02 66 3b 02 00 0f 20 20 20 20 65 ┆ f; e┆
0xb: 0000 00 00 03 fc 80 0e 74 2e 4e 75 6c 6c 5f 4f 62 6a ┆ t.Null_Obj┆