|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 2368 (0x940)
Types: TextFile
Names: »B«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
separate (Find_Unit.Build_Ada_Compilation_Unit)
procedure Procedure_Spec_Or_Body (Current_Unit : in out
Compilation_Unit.Ada_Compilation_Unit) is
--==============================================================
-- This procedure builds the next part of the grammar for an =
-- Ada compilation unit. Based on the next token, we will =
-- complete different productions.At present, we are =
-- parsing either a Procedure specification, Procedure body. =
-- This program will search for a semicolon or an 'is'. If a =
-- semicolon is found, then found the end of a Procedure =
-- specification. If an 'IS' is found, then keep searching for =
-- a Procedure body or a generic Procedure instantiation. =
-- Grammar : =
-- <Procedure_Spec_Or_Body> = =
-- ';' | =
-- 'IS' <Procedure_Body_Or_Stub> =
-- =
-- Written by GER with help from b2 and JM =
-- May 1985 EVB Software Engineering Inc. =
--==============================================================
Current_Token : Token_Package.Token;
-- Holds the current token
begin
-- Procedure_Spec_Or_Body
Get_Next_Significant_Token (Significant_Token => Current_Token,
Current_Unit => Current_Unit);
case Token_Package.Value_Of (Current_Token) is
when Token_Package.Semicolon_Token =>
-- The end of a Procedure specification has been found
Compilation_Unit.Add_Token_To_Compilation_Unit
(Token_To_Add => Current_Token, Unit_To_Add_To => Current_Unit);
when Token_Package.Is_Token =>
-- Either a Procedure body or a body stub
Compilation_Unit.Add_Token_To_Compilation_Unit
(Token_To_Add => Current_Token, Unit_To_Add_To => Current_Unit);
Procedure_Body_Or_Stub (Current_Unit => Current_Unit);
when others =>
-- Unknown token at this level of the grammar
raise Build_Syntax_Error;
end case;
end Procedure_Spec_Or_Body;