DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦86d8e5f50⟧ Ada Source

    Length: 8192 (0x2000)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Fruit_Frames_4, seg_04beae

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

E3 Source Code



package body Fruit_Frames_4 is




    procedure Put (The_Fact : Fact_Name; Where : Output_Stream.Object) is

        -- ........................................................................
        function Markers_Image (For_Slot : Marker_Slots; Value : Slot.Object)
                               return String is
            use Marker_Name_Facilities;
        begin
            return Marker_Names'Image (Get (Value));  
        end Markers_Image;


        function Visual_Blocks_Image
                    (For_Slot : Visual_Block_Slots; Value : Slot.Object)
                    return String is
        begin
            case For_Slot is
                when Label =>
                    return Character'Image (Get (Value));
                when Position_X =>
                    return Integer'Image (Get (Value));
                when Position_Y =>
                    return Integer'Image (Get (Value));
            end case;
        end Visual_Blocks_Image;


        function Requests_Image (For_Slot : Request_Slots; Value : Slot.Object)
                                return String is
            use Request_Name_Facilities;  
            use Marker_Name_Facilities;
        begin
            case For_Slot is
                when Request_Name =>
                    return Request_Names'Image (Get (Value));
                when Marker_Name =>
                    return Marker_Names'Image (Get (Value));
                when others =>
                    return "SOMETHING";
            end case;
        end Requests_Image;


        function Answers_Image (For_Slot : Answer_Slots; Value : Slot.Object)
                               return String is
            use Answer_Name_Facilities;
            use Request_Name_Facilities;

            function Answer_Names_Image (Value : Object) return String is
            begin
                if Have_Same_Type (Value, Positive_Answer) then
                    return Answer_Names'Image (Get (Value));
                else
                    if Value /= Null_Object then
                        return Character'Image (Get (Value));
                    else
                        return "NO LABEL";
                    end if;
                end if;
            end Answer_Names_Image;
        begin  
            case For_Slot is
                when Request_Name =>
                    return Request_Names'Image (Get (Value));
                when Answer =>  
                    return Answer_Names_Image (Value);  
            end case;
        end Answers_Image;


        function Visual_Markers_Image
                    (For_Slot : Visual_Marker_Slots; Value : Slot.Object)
                    return String is
            use Marker_Name_Facilities;
        begin
            case For_Slot is
                when Marker_Name =>
                    return Marker_Names'Image (Get (Value));
                when Position_X =>
                    return Integer'Image (Get (Value));
                when Position_Y =>
                    return Integer'Image (Get (Value));
            end case;
        end Visual_Markers_Image;


        function Visual_Columns_Image
                    (For_Slot : Visual_Column_Slots; Value : Slot.Object)
                    return String is
        begin
            return Integer'Image (Get (Value));
        end Visual_Columns_Image;


        -- ....................................................................
        procedure Put_Markers        is new Markers.Generic_Put
                                               (Image => Markers_Image);
        procedure Put_Visual_Blocks  is new Visual_Blocks.Generic_Put
                                               (Image => Visual_Blocks_Image);
        procedure Put_Requests       is new Requests.Generic_Put
                                               (Image => Requests_Image);  
        procedure Put_Answers        is new Answers.Generic_Put
                                               (Image => Answers_Image);
        procedure Put_Visual_Markers is new Visual_Markers.Generic_Put
                                               (Image => Visual_Markers_Image);
        procedure Put_Visual_Columns is new Visual_Columns.Generic_Put
                                               (Image => Visual_Columns_Image);
        -- ....................................................................


    begin  
        case Fact_Base.Class.Class_Name_Of (The_Fact) is
            when Marker =>
                Put_Markers (The_Fact, Where);
            when Visual_Block =>
                Put_Visual_Blocks (The_Fact, Where);
            when Request =>
                Put_Requests (The_Fact, Where);
            when Answer =>
                Put_Answers (The_Fact, Where);
            when Visual_Marker =>
                Put_Visual_Markers (The_Fact, Where);
            when Visual_Column =>
                Put_Visual_Columns (The_Fact, Where);
            when Nothing =>
                null;
        end case;
    end Put;

end Fruit_Frames_4;

E3 Meta Data

    nblk1=7
    nid=0
    hdr6=e
        [0x00] rec0=1e rec1=00 rec2=01 rec3=024
        [0x01] rec0=1b rec1=00 rec2=07 rec3=010
        [0x02] rec0=1b rec1=00 rec2=03 rec3=010
        [0x03] rec0=16 rec1=00 rec2=06 rec3=07e
        [0x04] rec0=01 rec1=00 rec2=04 rec3=01a
        [0x05] rec0=14 rec1=00 rec2=02 rec3=06a
        [0x06] rec0=09 rec1=00 rec2=05 rec3=001
    tail 0x21751786a86914a3de5c8 0x42a00088462063c03