Variables.mesa
Last Edited by: Arnon, June 10, 1985 4:19:22 pm PDT
DIRECTORY
Rope USING [ROPE],
AlgebraClasses;
Variables: CEDAR DEFINITIONS
= BEGIN OPEN AC: AlgebraClasses;
Types
Variable: TYPE = AC.Object;
VariableData: TYPE = Rope.ROPE;
Variables: AC.Object;
Structure Operations
ShortPrintName:
AC.ToRopeOp;
IsVariables: AC.UnaryPredicate;
Conversion and IO
CanRecast:
AC.BinaryPredicate;
LegalFirstChar:
AC.LegalFirstCharOp;
Write: AC.WriteOp;
Comparison
Equal: AC.BinaryPredicate;
VariableIndex: PROC [var: Rope.ROPE, V: VariableSeq] RETURNS [CARDINAL];
Variable indices are positive integers, thus if var = V[i], then i+1 returned.
RemoveMainVariable: PROC [V: VariableSeq] RETURNS [VariableSeq];
AddMainVariable: PROC [oldVars, newVar: VariableSeq] RETURNS [VariableSeq];
MainVariable: PROC [V: VariableSeq] RETURNS [VariableSeq];
VariableFirstChar: PROC [char: CHAR, V: VariableSeq] RETURNS [BOOL];
True if char is the first character of some variable in V.
END.