-- file Strings.Mesa
-- last edited by Sandman on August 13, 1980 7:36 AM
DIRECTORY
String: TYPE USING [
SubStringDescriptor, AppendChar, AppendString, AppendSubString,
EqualSubStrings, EquivalentSubStrings, StringBoundsFault];
Strings: DEFINITIONS IMPORTS String =
BEGIN OPEN StringImpl: String;
String: TYPE = POINTER TO StringBody;
SubStringDescriptor: TYPE = StringImpl.SubStringDescriptor;
SubString: TYPE = POINTER TO SubStringDescriptor;
AppendChar: PROC [s: String, c: CHARACTER] = INLINE {
StringImpl.AppendChar[s, c]};
AppendString: PROC [to, from: String] = INLINE {
StringImpl.AppendString[to, from]};
AppendSubString: PROC [to: String, from: SubString] = INLINE {
StringImpl.AppendSubString[to, from]};
BoundsFault: PROCEDURE RETURNS [SIGNAL [s: String] RETURNS [ns: String]] =
INLINE {RETURN[StringImpl.StringBoundsFault]};
EqualSubStrings, EqualSubString: PROC [s1, s2: SubString] RETURNS [BOOLEAN] =
INLINE {RETURN[StringImpl.EqualSubStrings[s1, s2]]};
EquivalentSubStrings, EquivalentSubString: PROC [s1, s2: SubString]
RETURNS [BOOLEAN] = INLINE {RETURN[StringImpl.EquivalentSubStrings[s1, s2]]};
END.