From a3cd6c0e6045d12f0cb8c9355bcd50f12e367f3b Mon Sep 17 00:00:00 2001 From: Michael Date: Sat, 17 Jun 2017 21:03:27 -0400 Subject: Commands are parsed with a bash-style syntax by default --- ShiftOS_TheReturn/CommandParser.cs | 29 +++++++++++++++++++---------- 1 file changed, 19 insertions(+), 10 deletions(-) (limited to 'ShiftOS_TheReturn/CommandParser.cs') diff --git a/ShiftOS_TheReturn/CommandParser.cs b/ShiftOS_TheReturn/CommandParser.cs index 868d27a..da1073f 100644 --- a/ShiftOS_TheReturn/CommandParser.cs +++ b/ShiftOS_TheReturn/CommandParser.cs @@ -85,10 +85,9 @@ namespace ShiftOS.Engine /// /// The command string to parse. /// The parsed command, ready to be invoked. - public KeyValuePair, Dictionary> ParseCommand(string cdd) + public KeyValuePair> ParseCommand(string cdd) { string command = ""; - string ns = ""; Dictionary arguments = new Dictionary(); string text = cdd; @@ -142,12 +141,7 @@ namespace ShiftOS.Engine if (part is CommandFormatMarker) { - if (part is CommandFormatNamespace) - { - ns = res; - help = -1; - } - else if (part is CommandFormatCommand) + if (part is CommandFormatCommand) { command = res; help = -1; @@ -197,7 +191,7 @@ namespace ShiftOS.Engine if (command == "+FALSE+") { //lblExampleCommand.Text = "Syntax Error"; - return new KeyValuePair, Dictionary>(); + return new KeyValuePair>(); } else { @@ -210,9 +204,24 @@ namespace ShiftOS.Engine argvs += "}"; lblExampleCommand.Text = command + argvs;*/ - return new KeyValuePair, Dictionary>(new KeyValuePair(ns, command), arguments); + return new KeyValuePair>(command, arguments); } } + + internal static CommandParser GenerateSample() + { + var parser = new CommandParser(); + parser.AddPart(new CommandFormatCommand()); + parser.AddPart(new CommandFormatText(" --")); + parser.AddPart(new CommandFormatArgument()); + parser.AddPart(new CommandFormatText(" ")); + parser.AddPart(new CommandFormatValue()); + parser.AddPart(new CommandFormatText(" --")); + parser.AddPart(new CommandFormatArgument()); + parser.AddPart(new CommandFormatText(" ")); + parser.AddPart(new CommandFormatValue()); + return parser; + } } public class CFValue -- cgit v1.2.3