DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

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 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ B T

⟦912c5a0e2⟧ TextFile

    Length: 1394 (0x572)
    Types: TextFile
    Names: »B«

Derivation

└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦this⟧ 

TextFile

separate (Parse)
procedure Parse_Dans (Ok : out Boolean; The_Node : out Abstract_Tree.P_Node) is
    Ok1 : Boolean := True;
    The_List, The_Next_List : Abstract_Tree.P_Instruction_List;
    Expr_Node : Abstract_Tree.P_Node;
begin
    Ok := True;
    Abstract_Tree.Create_List (The_List);
    Abstract_Tree.Create_List (The_Next_List);
    Text_Io.Put_Line ("parse_Dans");
    if Lex.Get_Token = L_Dans then
        Lex.Next;
        Parse_Expression (Ok1, Expr_Node);
        if not Ok1 then
            Parse_Error (Variable_Follow);
        end if;
        if Lex.Get_Token = L_Faire then
            Lex.Next;
            Parse_Les_Ordres (Ok1, The_List);
            if not Ok1 then
                Parse_Error (Les_Ordres_Follow);
            end if;
            Parse_Dans_Suite (Ok1, The_Next_List);
            if not Ok1 then
                Parse_Error (Dans_Suite_Follow);
            else
                The_Node := Abstract_Tree.Make_Node
                               (L_Dans, Expr_Node, The_List, The_Next_List);
            end if;
            if Lex.Get_Token = L_Fin then
                Lex.Next;
            else
                Ok := False;
            end if;
        else
            Ok := False;
            The_Node := Abstract_Tree.Empty_Node;
        end if;
    else
        Ok := False;
        The_Node := Abstract_Tree.Empty_Node;
    end if;
end Parse_Dans;