-- CommanderDefs.Mesa; edited by Sandman, January 22, 1979  7:44 AM
-- Copyright  Xerox Corporation 1979, 1980

CommanderDefs: DEFINITIONS =
  BEGIN
  
  CommandBlock: TYPE = RECORD [
    name: STRING,
    proc: PROCEDURE,
    nparams: CARDINAL,
    params: ARRAY [0..0) OF CommandParam];
  
  ParamType: TYPE = {string, numeric, character, boolean};
  
  CommandParam: TYPE = RECORD [type: ParamType, prompt: STRING];
  
  CommandBlockHandle: TYPE = POINTER TO CommandBlock;
  
  AddCommand: PROCEDURE [name: STRING, proc: PROCEDURE, numargs: CARDINAL]
    RETURNS [CommandBlockHandle];
  
  InitCommander: PROCEDURE [herald: STRING];
  WaitCommands: PROCEDURE;
  
  END.