ConvertUnsafe.mesa, unsafe conversions to/from STRING
Russ Atkinson, August 26, 1982 5:27 pm
Paul Rovner, September 19, 1983 9:16 pm
Last Edited by: Levin, September 22, 1983 10:39 am
DIRECTORY
Rope USING [ROPE, Text];
ConvertUnsafe: DEFINITIONS
=
BEGIN
OPEN Rope;
LS: TYPE = LONG STRING;
SubString: TYPE = RECORD [base: LS, offset, length: CARDINAL];
AppendRefText:
PROC [to:
LS, from:
REF
READONLY
TEXT];
raises BoundsFault if destination is too small
AppendRope:
PROC [to:
LS, from:
ROPE];
raises BoundsFault if destination is too small
AppendSubString:
PROC [to:
LS, from: SubString];
raises BoundsFault if destination is too small
AppendSubStringToRefText:
PROC [to:
REF TEXT, from: SubString];
raises BoundsFault if destination is too small
ToRefText:
PROC [from:
LS]
RETURNS [
REF
TEXT];
raises BoundsFault if the string is longer than LAST[NAT]
ToRope:
PROC [from:
LS]
RETURNS [Text];
raises BoundsFault if the string is longer than LAST[NAT]
SubStringToRope: PROC [from: SubString] RETURNS [Text];
EqualSubStrings:
PROC [s1, s2: SubString, case:
BOOL ←
TRUE]
RETURNS [
BOOL];
END.