|
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 - download
Length: 7168 (0x1c00) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Robots_Bricks_Tests, seg_011735
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧
with Slot, Instance, Text_Io; with Robot, Brick, Robot_Features, Brick_Features; package body Robots_Bricks_Tests is use Robot_Features, Brick_Features, Slot.Operators; -- True : constant Slot.Object := Slot.True_Object; -- False : Slot.Object := Slot.True_Object; ------------------------------------------------------------------------------ function Pack_It_Test (Br : Brick.Object; Ro : Robot.Object) return Boolean is Ok : Boolean; begin return Brick.Value_Of (Br, Place) = In_The_Heap and then Robot.Value_Of (Ro, Is_Busy) = Slot.False_Object and then Robot.Value_Of (Ro, The_Task) = State_Slot_Tasks.Value (Take) and then not Brick.Exist (Attribute => Place, Operator => Brick.Equal, Value => In_The_Heap, Attribute2 => Size, Operator2 => Brick.Greater, Value2 => Brick.Value_Of (Br, Size)); end Pack_It_Test; ------------------------------------------------------------------------------ function Get_Test (Br : Brick.Object; Ro : Robot.Object) return Boolean is begin return Robot.Value_Of (Ro, The_Task) = State_Slot_Tasks.Value (Take) and then Robot.Value_Of (Ro, Is_Busy) = Slot.True_Object and then Brick.Value_Of (Br, Place) = In_The_Nippers; end Get_Test; ------------------------------------------------------------------------------ function Put_To_Case_Test (Br : Brick.Object; Ro : Robot.Object) return Boolean is begin return Robot.Value_Of (Ro, The_Task) = State_Slot_Tasks.Value (Put) and then Brick.Value_Of (Br, Place) = In_The_Nippers and then not Robot.Exist (Attribute => Old, Operator => Robot.Less, Value => Robot.Value_Of (Ro, Old), Attribute2 => The_Task, Operator2 => Robot.Equal, Value2 => State_Slot_Tasks.Value (Put)); end Put_To_Case_Test; ------------------------------------------------------------------------------ function Stop_Test (Br : Brick.Object; Ro : Robot.Object) return Boolean is begin return Robot.Value_Of (Ro, The_Task) = State_Slot_Tasks.Value (Take) and then Robot.Value_Of (Ro, Is_Busy) = Slot.False_Object and then Brick.Value_Of (Br, Place) /= In_The_Heap; end Stop_Test; end Robots_Bricks_Tests;
nblk1=6 nid=5 hdr6=6 [0x00] rec0=15 rec1=00 rec2=01 rec3=05e [0x01] rec0=17 rec1=00 rec2=02 rec3=022 [0x02] rec0=15 rec1=00 rec2=06 rec3=000 [0x03] rec0=14 rec1=00 rec2=05 rec3=002 [0x04] rec0=0f rec1=00 rec2=02 rec3=000 [0x05] rec0=04 rec1=00 rec2=05 rec3=000 tail 0x2150cf6aa823a4c1bee74 0x42a00088462063c03 Free Block Chain: 0x5: 0000 00 04 03 66 80 1c 6f 74 2e 45 78 69 73 74 20 28 ┆ f ot.Exist (┆ 0x4: 0000 00 03 03 fc 80 1a 56 61 6c 75 65 20 20 20 20 20 ┆ Value ┆ 0x3: 0000 00 00 00 5e 80 03 2d 2d 2d 03 00 00 00 00 4e 20 ┆ ^ --- N ┆