|
|
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: 994 (0x3e2)
Types: TextFile
Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
with Animal;
with Application;
with Text_Io;
with Unchecked_Conversion;
package body Bird is
type State is
record
Offspring_No : Natural := 0;
Heir : Application.Object;
end record;
type P_Bird_State is access Bird.State;
function Application_View_Of is
new Unchecked_Conversion (Source => P_Bird_State,
Target => Application.Object);
function Create (Offspring_No : Natural := 0) return Object is
A : Animal.Object;
P : P_Bird_State;
As : Animal.State;
begin
P := new Bird.State;
P.Offspring_No := Offspring_No;
P.Heir := null;
A := Animal.Create (1);
As := Animal.Part_Of (A);
Animal.Set_Heir (As, Application_View_Of (P));
return Bird.Object (A);
end Create;
procedure Fly (Bird : Standard.Bird.Object) is
begin
Text_Io.Put_Line ("bird now flying ...");
end Fly;
end Bird;