<<>> <> <> <> <> <<>> <> <<>> DIRECTORY Commander USING [CommandObject, Handle, Register], CommandTool USING [DoCommand], IO USING [CharClass, EndOf, GetTokenRope, PutFR, RIS, SkipWhitespace, STREAM], <> Process USING [CheckForAbort], <> Rope USING [ROPE]; MakeDoCmdsAliases: CEDAR PROGRAM IMPORTS Commander, CommandTool, IO, --List, ProcessProps,-- Process ~ BEGIN <> ROPE: TYPE ~ Rope.ROPE; <> <> <<>> <> <> <> <> <> <> <<};>> <<>> <> <<>> <> <> <<};>> Break: PROC [char: CHAR] RETURNS [cc: IO.CharClass] = { cc _ SELECT char FROM IN [0C .. ' ] => sepr, ENDCASE => other; }; MakeSlices: PROC [cmd: Commander.Handle] RETURNS [result: REF ANY _ NIL, msg: ROPE _ NIL] ~ { <> clientData: REF ANY ~ cmd.procData.clientData; in: IO.STREAM _ IO.RIS[cmd.commandLine]; FOR i: INT _ in.SkipWhitespace[], in.SkipWhitespace[] WHILE NOT in.EndOf[] DO MakeCommandRope: PROC [clientData: REF ANY, package: ROPE] RETURNS [cmd: ROPE] ~ { SELECT clientData FROM <> $MakeDo4 => cmd _ IO.PutFR["MakeDo -df %g-Source.df -df %g-PCR.df -df %g-Sun4.df", [rope[package]], [rope[package]], [rope[package]]]; $MakePrediction4 => cmd _ IO.PutFR["MakePrediction -df %g-Source.df -df %g-PCR.df -df %g-Sun4.df", [rope[package]], [rope[package]], [rope[package]]]; $MakeVerify4 => cmd _ IO.PutFR["MakeVerify %g-Source.df %g-PCR.df %g-Sun4.df", [rope[package]], [rope[package]], [rope[package]]]; <> $MakeDo4O3 => cmd _ IO.PutFR["MakeDo -df %g-Source.df -df %g-PCR.df -df %g-sun4O3.df", [rope[package]], [rope[package]], [rope[package]]]; $MakePrediction4O3 => cmd _ IO.PutFR["MakePrediction -df %g-Source.df -df %g-PCR.df -df %g-sun4O3.df", [rope[package]], [rope[package]], [rope[package]]]; $MakeVerify4O3 => cmd _ IO.PutFR["MakeVerify %g-Source.df %g-PCR.df %g-sun4O3.df", [rope[package]], [rope[package]], [rope[package]]]; <> $MakeDo0 => cmd _ IO.PutFR["MakeDo -df %g-Source.df -df %g-PrincOps.df", [rope[package]], [rope[package]]]; $MakePrediction0 => cmd _ IO.PutFR["MakePrediction -df %g-Source.df -df %g-PrincOps.df", [rope[package]], [rope[package]]]; $MakeVerify0 => cmd _ IO.PutFR["MakeVerify %g-Source.df %g-PrincOps.df", [rope[package]], [rope[package]]]; ENDCASE => ERROR; }; package: ROPE ~ in.GetTokenRope[Break].token; commandRope: ROPE ~ MakeCommandRope[clientData, package]; [] _ CommandTool.DoCommand[commandRope, cmd]; Process.CheckForAbort[]; ENDLOOP; }; <> <> <> <> <> <> <<};>> Init: PROC [] ~ { Commander.Register[key: "MakeDo4", proc: MakeSlices, doc: "Slice for Sun4", clientData: $MakeDo4]; Commander.Register[key: "MakePrediction4", proc: MakeSlices, doc: "Slice for Sun4", clientData: $MakePrediction4]; Commander.Register[key: "MakeVerify4", proc: MakeSlices, doc: "Slice for Sun4", clientData: $MakeVerify4]; Commander.Register[key: "MakeDo4O3", proc: MakeSlices, doc: "Slice for Sun4O3", clientData: $MakeDo4O3]; Commander.Register[key: "MakePrediction4O3", proc: MakeSlices, doc: "Slice for Sun4O3", clientData: $MakePrediction4O3]; Commander.Register[key: "MakeVerify4O3", proc: MakeSlices, doc: "Slice for Sun4O3", clientData: $MakeVerify4O3]; Commander.Register[key: "MakeDo0", proc: MakeSlices, doc: "Slice for PrincOps", clientData: $MakeDo0]; Commander.Register[key: "MakePrediction0", proc: MakeSlices, doc: "Slice for PrincOps", clientData: $MakePrediction0]; Commander.Register[key: "MakeVerify0", proc: MakeSlices, doc: "Slice for PrincOps", clientData: $MakeVerify0]; }; Init[]; END. <<>>