|
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: 6144 (0x1800) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package body Umps_Defs, seg_02656d, seg_026d39
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦5a81ac88f⟧ »Space Info Vol 1« └─⟦this⟧ └─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
------------------------------------------------------------------------------- package body Umps_Defs is Special_Char : constant Character := Ascii.Nul; --------------------------------------------------------------------------- procedure Normalize (The_String : Standard.String; To : in out Standard.String) is begin if The_String'Length >= To'Length then To := The_String (The_String'First .. The_String'First + To'Length - 1); else To := The_String & (The_String'Last + 1 .. To'Length - The_String'Length + The_String'Last => Special_Char); end if; end Normalize; --------------------------------------------------------------------------- function Normalize (The_String : Standard.String) return String is begin if The_String'Length > String'Length then return String (The_String (The_String'First .. The_String'First + String'Length - 1)); else return String (The_String & (The_String'Last + 1 .. String'Length - The_String'Length + The_String'Last => Special_Char)); end if; end Normalize; --------------------------------------------------------------------------- function Normalize (The_Name : Standard.String) return Name is begin if The_Name'Length > Name'Length then return Name (The_Name (The_Name'First .. The_Name'First + Name'Length - 1)); else return Name (The_Name & (The_Name'Last + 1 .. Name'Length - The_Name'Length + The_Name'Last => Special_Char)); end if; end Normalize; --------------------------------------------------------------------------- function Denormalize (The_String : String) return Standard.String is Index : Natural := The_String'First - 1; begin Search_End_Char: for I in The_String'Range loop exit Search_End_Char when The_String (I) = Special_Char; Index := I; end loop Search_End_Char; return Standard.String (The_String (The_String'First .. Index)); end Denormalize; --------------------------------------------------------------------------- function Denormalize (The_Name : Name) return Standard.String is Index : Natural := The_Name'First - 1; begin Search_End_Char: for I in The_Name'Range loop exit Search_End_Char when The_Name (I) = Special_Char; Index := I; end loop Search_End_Char; return Standard.String (The_Name (The_Name'First .. Index)); end Denormalize; end Umps_Defs; -------------------------------------------------------------------------------
nblk1=5 nid=2 hdr6=8 [0x00] rec0=1b rec1=00 rec2=01 rec3=020 [0x01] rec0=16 rec1=00 rec2=05 rec3=08e [0x02] rec0=1a rec1=00 rec2=04 rec3=01c [0x03] rec0=08 rec1=00 rec2=03 rec3=000 [0x04] rec0=06 rec1=00 rec2=02 rec3=000 tail 0x21520438c83aa67a18f29 0x42a00088462063c03 Free Block Chain: 0x2: 0000 00 00 00 bd 80 37 6e 20 53 74 61 6e 64 61 72 64 ┆ 7n Standard┆