|
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 Method, seg_02c9bd
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
with Message_Interchange; with Signature; with String_Utilities; with Unchecked_Deallocation; package body Method is use Bs; Sep : Character renames Message_Interchange.Separator; function Sup (S : String) return String renames String_Utilities.Upper_Case; function Create (Name : String; Signature : Standard.Signature.Object) return Method.Object is begin return Object'(Name => Bs.Value (Sup (Name)), Signature => Signature); end Create; function Image (Method : Standard.Method.Object) return String is begin return Bs.Image (Method.Name) & Sep & Signature.Image (Method.Signature); end Image; function Value (Of_String : String) return Method.Object is S : String renames Of_String; Signature : Positive := Of_String'First; begin loop exit when S (Signature) = Sep; Signature := Signature + 1; end loop; return Object'(Name => Bs.Value (Sup (S (S'First .. Signature - 1))), Signature => Standard.Signature.Value (S (Signature + 1 .. S'Last))); end Value; function Is_Equal (Left, Right : Method.Object) return Boolean is begin return Left.Name = Right.Name and Signature.Is_Equal (Left.Signature, Right.Signature); end Is_Equal; function Is_Compatible (Left, Right : Method.Object) return Boolean is begin return Left.Name = Right.Name and Signature.Is_Compatible (Left.Signature, Right.Signature); end Is_Compatible; function Get_Name (Method : Standard.Method.Object) return String is begin return Bs.Image (Method.Name); end Get_Name; function Get_Signature (Method : Standard.Method.Object) return Signature.Object is begin return Method.Signature; end Get_Signature; procedure Strip_Signature (Method : in out Standard.Method.Object) is begin Signature.Strip_Values (Method.Signature); end Strip_Signature; end Method;
nblk1=4 nid=3 hdr6=6 [0x00] rec0=22 rec1=00 rec2=01 rec3=046 [0x01] rec0=1e rec1=00 rec2=04 rec3=00c [0x02] rec0=0d rec1=00 rec2=02 rec3=000 [0x03] rec0=02 rec1=3f rec2=41 rec3=642 tail 0x21724d89e840774e0915a 0x42a00088462060003 Free Block Chain: 0x3: 0000 00 00 03 fc 80 07 64 20 6c 6f 6f 70 3b 07 00 00 ┆ d loop; ┆