DIRECTORY IO: TYPE USING [STREAM], Rope: TYPE 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 [command: Rope.ROPE] 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_1]; Failed: ERROR; }. ¸file CommandUtil.Mesa last modified by Satterthwaite, December 10, 1982 10:32 am last edit by Russ Atkinson, 19-Dec-80 13:22:44 Last Edited by: Maxwell, August 19, 1983 8:39 am ʘJšœ™Jšœ:™:Jšœ.™.J™0J™šÏk ˜ Jšœœœœ˜Jšœœœœ˜J˜—Jšœ œœ˜&˜Jš œ œœœœ œ˜0Jš œ œœœœ œœ˜4J˜šÏnœœ˜ Jšœœœ˜ Jšœ œ˜J˜Jšœ œ˜—Jšž œœ œœ ˜Hš ž œœœ œœ˜BJšœ œ˜—š žœœœ œœ˜>Jšœœœ˜Jšœ&˜,—š žœœœœœ˜>Jšœœ˜—Jšž œœœœ˜5šžœœœ˜ Jšœ œ+œ˜H—Jš ž œœœœœ˜AJš ž œœœœœ˜3Jšž œœ œœ˜1J˜Jšœœ˜J˜J˜J˜——…—Ö