(* Copyright (C) 1989, Digital Equipment Corporation *) (* All rights reserved. *) (* See the file COPYRIGHT for a full description. *) (* File: Formal.i3 *) (* Last Modified On Wed Feb 7 01:02:52 1990 By muller *) (* Modified On Wed Jul 5 13:38:47 1989 By kalsow *) INTERFACE Formal; IMPORT Type, Value, String, Expr; TYPE Mode = {mVALUE, mVAR, mCONST}; PROCEDURE New (name: String.T; m: Mode; offset: INTEGER; type: Type.T; default: Expr.T; unused: BOOLEAN := FALSE): Value.T; PROCEDURE Split (formal: Value.T; VAR offset: INTEGER; VAR mode: Mode; VAR type: Type.T; VAR default: Expr.T; VAR unused: BOOLEAN): BOOLEAN; PROCEDURE HasClosure (formal: Value.T): BOOLEAN; PROCEDURE CheckArgs (VAR actuals : Expr.List; formals : ARRAY OF Value.T; complain : BOOLEAN := TRUE; nFormals : INTEGER := 99999): BOOLEAN; END Formal.