Text preview for : StringDefs.mesa_Oct77.pdf part of xerox StringDefs.mesa Oct77 xerox mesa 3.0_1977 listing StringDefs.mesa_Oct77.pdf
Back to : StringDefs.mesa_Oct77.pdf | Home
stringdefs.mesn 24-0CT-77 18:44:36 Page 1
-- File: StringDefs.Mesa'
-- Edited by Sandman on July 13, 1977 7:35 AM
DIRECTORY AltoDefs: FROM "altodefs";
DEFINITIONS FROM AltoDefs;
StringDefs: DEFINITIONS ~
BEGIN
StringHeaderSize: PRIVATE INTEGER a 2;
CharsPerWord: INTEGER = AltoDefs.CharsPerWord;
charlength: INTEGER = AltoDefs.charlength;
CharsPerPage: INTEGER = AltoDefs.CharsPerPage;
LogCharsPerPage: INTEGER = AltoDefs.LogCharsPerPage;
SubStringDescriptor: TYPE = RECORD [
base: STRING,
offset, length: CARDINAL]:
SubString: TYPE = POINTER TO SubStringDescriptor;
Overflow: SIGNAL:
InvalidNumber: SIGNAL;
StringBoundsFault: SIGNAL [s:STRING] RETURNS [ns:STRING];
WordsForString: PROCEDURE [nchars:INTEGER] RETURNS [INTEGER]:
AppendChar: PROCEDURE [s:STRING, c:CHARACTER]:
AppendString: PROCEDURE [to,from:STRING]:
EqualString. EquivalentString: PROCEDURE [sl.s2:STRING] RETURNS [BOOLEAN]:
AppendSubString: PROCEDURE[to:STRING, from:SubString]:
EqualSubStrings, EquivalentSubStrings: PROCEDURE [sl,s2:SubString] RETURNS [BOOLEAN]:
DeleteSubString: PROCEDURE [s:SubString]:
StringToOecimal: PROCEDURE [STRING] RETURNS [INTEGER]:
StringToOctal: PROCEDURE [STRING] RETURNS [UNSPECIFIED]:
StringToNumber: PROCEDURE [STRING,CARDINAL] RETURNS [UNSPECIFIED]:
-- routines for bcpl strings
bcplStringHeaderSize: PRIVATE INTEGER = 1:
bytepair: PRIVATE TYPE = MACHINE DEPENDENT RECORD [left,right:CHARACTER]:
bcplSTRING: TYPE = PRIVATE MACHINE DEPENDENT RECORD[
length: BYTE. body: CHARACTER,
rest: ARRAY [1 .. 127] OF bytepair]:
bcplStringOverflow, mesaStringOverflow: SIGNAL:
WordsForBcplString: PROCEDURE [n:INTEGER] RETURNS [INTEGER]:
MesaToBcplSlring: PROCEDURE [s:STRING, t:POINTER TO bcplSTRING]:
BcplToMesaSlring: PROCEDURE [t:POINTER TO bcplSTRING, s:STRING]:
END.