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 - downloadIndex: ┃ T V ┃
Length: 5756 (0x167c) Types: TextFile Names: »V«
└─⟦85b835f43⟧ Bits:30000549 8mm tape, Rational 1000, Xlib rev 6.00 └─ ⟦0c20f784e⟧ »DATA« └─⟦1abbe589f⟧ └─⟦591c5b094⟧ └─⟦this⟧
with Vstring_Type; use Vstring_Type; package Vstring_Scan is ------------------------------------------------------------------------------ -- VString Scanning Functions ------------------------------------------------------------------------------ -- Copyright 1988 - 1991 by Rational, Santa Clara, California. -- -- All Rights Reserved. -- -- Permission to use, copy, modify, and distribute this software and its -- documentation for any purpose and without fee is hereby granted, -- provided that the above copyright notice(s) appear in all copies and that -- both that copyright notice(s) and this permission notice appear in -- supporting documentation, and that the name of Rational not be used in -- advertising or publicity pertaining to distribution of the software -- without specific, written prior permission. -- -- Rational disclaims all warranties with regard to this software, including -- all implied warranties of merchantability and fitness, in no event shall -- Rational be liable for any special, indirect or consequential damages or -- any damages whatsoever resulting from loss of use, data or profits, whether -- in an action of contract, negligence or other tortious action, arising out -- of or in connection with the use or performance of this software. ------------------------------------------------------------------------------ ----BreakSet - Data structure that controls the scanning of a string. -- For each Ascii character it determines the scanning action. type Scan_Action is (Sa_Transfer, -- Copy character From => To Sa_Skip, -- Discard character From Sa_Transfer_Uc, -- Copy character Upper_Case(From) => To Sa_Transfer_Lc, -- Copy character Lower_Case(From) => To Sa_Transfer_Break, -- Copy character From => To and stop scan Sa_Transfer_Uc_Break, -- Copy character Upper_Case(From) => To & stop Sa_Transfer_Lc_Break, -- Copy character Lower_Case(From) => To & stop Sa_Skip_Break, -- Discard character From and stop scan Sa_Retain_Break); -- Retain character in From and stop scan type Breakset is array (Character) of Scan_Action; procedure Scan (To : in out Vstring_Data; From : in out Vstring_Data; Brk : Breakset; Break_Char : out Character); procedure Scan (To : in out Vstring_Data; From : Vstring; Brk : Breakset; Break_Char : out Character); procedure Scan (To : Vstring; From : in out Vstring_Data; Brk : Breakset; Break_Char : out Character); procedure Scan (To : Vstring; From : Vstring; Brk : Breakset; Break_Char : out Character); ----Scans the From string. Removes character from the beginning of From -- and places then into the To string as controlled by the Breakset. The -- character that stops the scan is copied into Break_Char. If the scan -- stops due to end-of-string then Break_Char = Ascii.Nul. procedure Append_Scan (To : in out Vstring_Data; From : in out Vstring_Data; Brk : Breakset; Break_Char : out Character); procedure Append_Scan (To : in out Vstring_Data; From : Vstring; Brk : Breakset; Break_Char : out Character); procedure Append_Scan (To : in out Vstring; From : in out Vstring_Data; Brk : Breakset; Break_Char : out Character); procedure Append_Scan (To : in out Vstring; From : Vstring; Brk : Breakset; Break_Char : out Character); ----Just like Scan except that the To string is Appended rather than -- Assigned. procedure Trunc_Scan (From : in out Vstring_Data; Brk : Breakset; Break_Char : out Character); procedure Trunc_Scan (From : Vstring; Brk : Breakset; Break_Char : out Character); ----Just like Scan except there is no To string. procedure Set_Breakset (Brk : in out Breakset; Break : E_String; Omit : E_String; Mode : E_String); ----Initialize a Breakset. -- Break - Contains all characters that will (not) stop the scan. -- Omit - Contains all characters to be dropped as From is scanned. -- Mode - Mode setting characters: -- I - Break contains scan stopping characters (Inclusive scan) -- X - Break contains scan non-stopping chars (eXclusive scan) -- A - Append break character in To string and stop -- R - Retain break character in From string and stop -- S - Skip (drop) break character and stop -- U - Convert characters to Upper case as they are copied -- L - Convert characters to Lower case as they are copied end Vstring_Scan;