[ivy]<Satterthwaite>Mimosa>CommandUtil.mesa!1

CommandUtil.Mesa
Copyright © 1985 by Xerox Corporation. All rights reserved.
Satterthwaite, December 10, 1982 10:32 am
Russ Atkinson, 19-Dec-80 13:22:44
Maxwell, August 19, 1983 8:39 am
Paul Rovner, October 4, 1983 4:59 pm
Russ Atkinson (RRA) March 6, 1985 10:03:29 pm PST
DIRECTORY
IO USING [STREAM],
Rope USING [ROPE];
CommandUtil: DEFINITIONS = {OPEN Rope;
PairList: TYPE = LIST OF RECORD[key, val: ROPE];
Switches: TYPE = PACKED ARRAY CHAR ['a..'z] OF BOOL;
Echo: PROC [
d: IO.STREAM,
operator: ROPE,
argList, resultList: PairList,
switches: ROPE];
GetSwitches: PROC [switches: ROPE, default: Switches] RETURNS[Switches];
GetNthPair: PROC [list: PairList, n: CARDINAL, delete: BOOL←FALSE]
RETURNS [key,value: ROPE];
GetNth: PROC [list: PairList, n: CARDINAL, delete: BOOL←FALSE]
RETURNS [ROPE] = INLINE {
RETURN [GetNthPair[list, n, delete].value]};
KeyValue: PROC [key: ROPE, list: PairList, delete: BOOL←FALSE]
RETURNS [ROPE];
ListLength: PROC [list: PairList] RETURNS [CARDINAL];
Parse: PROC [s: IO.STREAM]
RETURNS [operator: ROPE, argList, resultList: PairList, switches: ROPE];
SetExtension: PROC [root, defaultExt: ROPE] RETURNS [name: ROPE];
GetRootName: PROC[name: ROPE] RETURNS [root: ROPE];
SkipNonBlank: PROC [s: IO.STREAM, n: CARDINAL𡤁];
Failed: ERROR;
}.