|
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: T V
Length: 7433 (0x1d09) Types: TextFile Names: »V«
└─⟦85b835f43⟧ Bits:30000549 8mm tape, Rational 1000, Xlib rev 6.00 └─⟦0c20f784e⟧ »DATA« └─⟦1abbe589f⟧ └─⟦591c5b094⟧ └─⟦this⟧
with Arithmetic; use Arithmetic; with Vstring_Type; use Vstring_Type; package Vstring_Assign is ------------------------------------------------------------------------------ -- VString Assignment and Concatenation operations. ------------------------------------------------------------------------------ -- 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. ------------------------------------------------------------------------------ procedure Assign (Vstr1 : in out Vstring_Data; Vstr2 : Vstring_Data); procedure Assign (Vstr1 : in out Vstring_Data; Vstr2 : Vstring); procedure Assign (Vstr1 : in out Vstring_Data; Vstr2 : E_String); procedure Assign (Vstr1 : in out Vstring_Data; Vstr2 : Character); procedure Assign (Vstr1 : in out Vstring_Data; Vstr2 : Character; Copies : S_Natural); procedure Assign (Vstr1 : Vstring; Vstr2 : Vstring_Data); procedure Assign (Vstr1 : Vstring; Vstr2 : Vstring); procedure Assign (Vstr1 : Vstring; Vstr2 : E_String); procedure Assign (Vstr1 : Vstring; Vstr2 : Character); procedure Assign (Vstr1 : Vstring; Vstr2 : Character; Copies : S_Natural); procedure Assign_Resize (Vstr1 : in out Vstring; Vstr2 : E_String; Resize_Amount : S_Positive := 256); procedure Assign_Resize (Vstr1 : in out Vstring; Vstr2 : Vstring_Data; Resize_Amount : S_Positive := 256); procedure Assign_Resize (Vstr1 : in out Vstring; Vstr2 : Vstring; Resize_Amount : S_Positive := 256); ----Assign a string, a character, or a sequence of N identical characters -- to a Vstring. If the source's length is greater than the destination's -- Maximum_Length then the copy will be truncated on the end. -- A := B; procedure Assign_New (Vstr1 : out Vstring; Vstr2 : Vstring_Data); procedure Assign_New (Vstr1 : out Vstring; Vstr2 : Vstring); procedure Assign_New (Vstr1 : out Vstring; Vstr2 : E_String); procedure Assign_New (Vstr1 : out Vstring; Vstr2 : Character); procedure Assign_New (Vstr1 : out Vstring; Vstr2 : Character; Copies : S_Natural); ----Assign a string, a character, or a sequence of N identical characters -- to a newly allocated Vstring of exactly the right size. The -- Destination will be allocated to have a Maximum_Length = Length(Source). procedure Append (Vstr1 : in out Vstring_Data; Vstr2 : Vstring_Data); procedure Append (Vstr1 : in out Vstring_Data; Vstr2 : Vstring); procedure Append (Vstr1 : in out Vstring_Data; Vstr2 : E_String); procedure Append (Vstr1 : in out Vstring_Data; Vstr2 : Character); procedure Append (Vstr1 : in out Vstring_Data; Vstr2 : Character; Copies : S_Natural); procedure Append (Vstr1 : Vstring; Vstr2 : Vstring_Data); procedure Append (Vstr1 : Vstring; Vstr2 : Vstring); procedure Append (Vstr1 : Vstring; Vstr2 : E_String); procedure Append (Vstr1 : Vstring; Vstr2 : Character); procedure Append (Vstr1 : Vstring; Vstr2 : Character; Copies : S_Natural); ----Append a string, a character, or a sequence of N identical characters -- onto the end of a Vstring. If the source's length is greater than the -- destination's Length_Left then the new data will be truncated on the -- end. -- A := A & B; procedure Append_Resize (Vstr1 : in out Vstring; Vstr2 : E_String; Resize_Amount : S_Positive := 256); procedure Append_Resize (Vstr1 : in out Vstring; Vstr2 : Character; Resize_Amount : S_Positive := 256); procedure Append_Resize (Vstr1 : in out Vstring; Vstr2 : Character; Copies : S_Natural; Resize_Amount : S_Positive := 256); procedure Append_Resize (Vstr1 : in out Vstring; Vstr2 : Vstring_Data; Resize_Amount : S_Positive := 256); procedure Append_Resize (Vstr1 : in out Vstring; Vstr2 : Vstring; Resize_Amount : S_Positive := 256); ----Just line Append except that Vstr1 is resized upwards if necessary to -- hold all of Vstr1&Vstr2. procedure Prepend (Vstr1 : in out Vstring_Data; Vstr2 : Vstring_Data); procedure Prepend (Vstr1 : in out Vstring_Data; Vstr2 : Vstring); procedure Prepend (Vstr1 : in out Vstring_Data; Vstr2 : E_String); procedure Prepend (Vstr1 : in out Vstring_Data; Vstr2 : Character); procedure Prepend (Vstr1 : in out Vstring_Data; Vstr2 : Character; Copies : S_Natural); procedure Prepend (Vstr1 : Vstring; Vstr2 : Vstring_Data); procedure Prepend (Vstr1 : Vstring; Vstr2 : Vstring); procedure Prepend (Vstr1 : Vstring; Vstr2 : E_String); procedure Prepend (Vstr1 : Vstring; Vstr2 : Character); procedure Prepend (Vstr1 : Vstring; Vstr2 : Character; Copies : S_Natural); ----Prepend a string, a character, or a sequence of N identical characters -- onto the start of a Vstring. If the source's length is greater than the -- destination's Maximum_Length then this is equivalent to an assignment. -- If the source's length plus the destination's original length is -- greater than the destination's Maximum_Length then the result will -- contain the source's data plus a truncated portion from the start of -- the destination's original data. -- A := B & A; end Vstring_Assign;