PositionedList.mesa
Copyright Ó 1985, 1986, 1987, 1993 by Xerox Corporation. All rights reserved.
created by L. Stewart
Russ Atkinson (RRA) January 20, 1987 7:16:18 am PST
Last tweaked by Mike Spreitzer on February 22, 1988 1:29:03 pm PST
Renamed by Swinehart, September 17, 1993 12:31 pm PDT
PositionedList:
CEDAR
DEFINITIONS ~ {
PositionedArgumentList: TYPE ~ LIST OF PositionedArgument;
PositionedArgumentVector: TYPE ~ REF PositionedArgumentVectorPrivate;
PositionedArgumentVectorPrivate: TYPE ~ RECORD [s: SEQUENCE argc: NAT OF PositionedArgument];
PositionedArgument:
TYPE ~
RECORD [
start, length: INT--char positions of argument in command line--,
rope: Rope.ROPE];
ParseToPositionedList: PROC [cmd: Commander.Handle, switchChar: CHAR ¬ '-] RETURNS [list: PositionedArgumentList, length: NAT];
ParsePositioned:
PROC [cmd: Commander.Handle, switchChar:
CHAR ¬ '-]
RETURNS [argv: PositionedArgumentVector];
StripVectorPositions: PROC [pargv: PositionedArgumentVector] RETURNS [argv: CommanderOps.ArgumentVector];
StripListPositions: PROC [PositionedArgumentList] RETURNS [LIST OF Rope.ROPE];
}.