--File: JaMLiteralDefs.mesa
--Written by: John Warnock, January, 1979
--Last changed by Doug Wyatt, March 29, 1980 1:35 PM

DIRECTORY
JaMMasterDefs: FROM "JaMMasterDefs" USING [Object, Stack],
StreamDefs: FROM "StreamDefs" USING [StreamHandle];

JaMLiteralDefs: DEFINITIONS =
BEGIN OPEN JaMMasterDefs;

-- The following routines implement a set of literal building routines.
-- The resulting constructed literal is pushed on the operand stack.

JaMLiteral: PROGRAM;

IntegerLit: PUBLIC PROCEDURE [i:INTEGER,s:Stack];

LongIntegerLit: PUBLIC PROCEDURE [l:LONG INTEGER,s:Stack];

RealLit: PUBLIC PROCEDURE [r:REAL,s:Stack];

BooleanLit: PUBLIC PROCEDURE [b:BOOLEAN,s:Stack];

StringLit: PUBLIC PROCEDURE [string:STRING,s:Stack];

UserLit
: PUBLIC PROCEDURE [type:INTEGER,address:LONG POINTER,s:Stack];


MakeStringObject
: PUBLIC PROCEDURE [string:STRING]
RETURNS[ob:StringType Object];

StreamLit: PUBLIC PROCEDURE [stream:StreamDefs.StreamHandle,s:Stack];

END.

DKW March 27, 1980 6:17 PM
added JaMLiteral: PROGRAM;