/// <summary> /// Get the default CommandParser instance with default parser objects configured /// </summary> /// <returns></returns> public static CommandParser GetDefault() { var verbParser = VerbGrammar.GetParser(); var argParser = SimplifiedArgumentGrammar.GetParser(); var scriptParser = ScriptFormatGrammar.CreateParser(verbParser); return(new CommandParser(verbParser, argParser, scriptParser)); }
private CommandParser GetSimplifiedParser() { var verbParser = VerbGrammar.GetParser(); var argParser = SimplifiedArgumentGrammar.GetParser(); var scriptParser = ScriptFormatGrammar.CreateParser(verbParser); return(new CommandParser(verbParser, argParser, scriptParser)); }
public ICommandParser Build() { if (_parser != null) { return(_parser); } var argParser = _argParser ?? SimplifiedArgumentGrammar.GetParser(); var verbParser = _verbParser ?? VerbGrammar.GetParser(); var scriptParser = _scriptParser ?? ScriptFormatGrammar.CreateParser(verbParser); return(new CommandParser(verbParser, argParser, scriptParser)); }
public void UseVerbParser_Test() { var output = new TestOutput(); var verbParser = VerbGrammar.GetParser(); var engine = new EngineBuilder() .SetupHandlers(h => h.UseHandlerTypes(typeof(TestHandler))) .SetupOutput(o => o.DoNotUseConsole().Add(output)) .SetupArguments(a => a.UseVerbParser(verbParser)) .Build(); engine.RunHeadless("test a b=x -c"); output.Lines.Count.Should().Be(3); output.Lines[0].Should().Be("a"); output.Lines[1].Should().Be("x"); output.Lines[2].Should().Be("True"); }