|
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: 5120 (0x1400) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Br_Frames, seg_04a0a1, seg_04a913, seg_04b383
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
package body Br_Frames is procedure Put (The_Fact : Br_Kbs.Kbs.Fact_Name; Where : Output_Stream.Object) is -- ...................................................... function Places_Image (Value : Slot.Object) return String is use Slot; begin if Slot.Have_Same_Type (Value, On_Heap_Place) then return Places'Image (Places_Facilities.Get (Value)); else return " BOX " & Integer'Image (Slot.Get (Value)); end if; end Places_Image; function Actions_Image (Value : Slot.Object) return String is begin return Actions'Image (Actions_Facilities.Get (Value)); end Actions_Image; -- ...................................................... function Brick_Frames_Image (For_Slot : Brick_Slots; Value : Slot.Object) return String is begin case For_Slot is when Name => return Slot.Get (Value); when Size => return Integer'Image (Slot.Get (Value)); when Place => return Places_Image (Value); end case; end Brick_Frames_Image; function Robot_Frames_Image (For_Slot : Robot_Slots; Value : Slot.Object) return String is begin case For_Slot is when Action => return Actions_Image (Value); when Box => return Integer'Image (Slot.Get (Value)); end case; end Robot_Frames_Image; -- ...................................................... procedure Put_Brick is new Bricks.Generic_Put (Image => Brick_Frames_Image); procedure Put_Robot is new Robots.Generic_Put (Image => Robot_Frames_Image); -- ...................................................... begin case Br_Kbs.Kbs.Fact_Base.Class.Class_Name_Of (The_Fact) is when Br_Kbs.Brick => Put_Brick (The_Fact, Where); when Br_Kbs.Robot => Put_Robot (The_Fact, Where); when Br_Kbs.Nothing => null; end case; end Put; end Br_Frames;
nblk1=4 nid=0 hdr6=8 [0x00] rec0=1c rec1=00 rec2=01 rec3=004 [0x01] rec0=05 rec1=00 rec2=04 rec3=06a [0x02] rec0=19 rec1=00 rec2=03 rec3=038 [0x03] rec0=0c rec1=00 rec2=02 rec3=000 tail 0x2174e87b4866c42687771 0x42a00088462063c03