protected override void SetupParser(IParserSetup <Person> parser)
 {
     parser
     .Setup("name", (p, v) => p.Name = v.AsString())
     .Setup("age", (p, v) => p.Age   = v.AsInt(13))
     .Setup("hobbies", (p, v) => p.Hobbies.AddRange(v.AsArray <string>()));
 }
Exemplo n.º 2
0
 public EngineBuilder(IHandlerSetup handlers = null, IOutputSetup output = null, IEnvironmentSetup environments = null, IParserSetup parsers = null, EngineEventCatalog events = null, EngineSettings settings = null)
 {
     _handlers     = handlers ?? new HandlerSetup();
     _eventCatalog = events ?? new EngineEventCatalog();
     _output       = output ?? new OutputSetup();
     _environments = environments ?? new EnvironmentSetup();
     _parsers      = parsers ?? new ParserSetup();
     _settings     = settings ?? new EngineSettings();
 }
Exemplo n.º 3
0
 protected abstract void SetupParser(IParserSetup <T> parser);
Exemplo n.º 4
0
 /// <summary>
 /// Use a class Windows-CMD syntax for arguments
 /// </summary>
 /// <param name="setup"></param>
 /// <returns></returns>
 public static IParserSetup UseWindowsCmdArgumentParser(this IParserSetup setup)
 {
     Assert.ArgumentNotNull(setup, nameof(setup));
     return(setup.UseArgumentParser(WindowsCmdArgumentGrammar.GetParser()));
 }
Exemplo n.º 5
0
 /// <summary>
 /// Use a Windows PowerShell syntax for arguments
 /// </summary>
 /// <param name="setup"></param>
 /// <returns></returns>
 public static IParserSetup UsePowershellStyleArgumentParser(this IParserSetup setup)
 {
     Assert.ArgumentNotNull(setup, nameof(setup));
     return(setup.UseArgumentParser(PowershellStyleArgumentGrammar.GetParser()));
 }
Exemplo n.º 6
0
 /// <summary>
 /// Use the StoneFruit simplified argument syntax
 /// </summary>
 /// <param name="setup"></param>
 /// <returns></returns>
 public static IParserSetup UseSimplifiedArgumentParser(this IParserSetup setup)
 {
     Assert.ArgumentNotNull(setup, nameof(setup));
     return(setup.UseArgumentParser(SimplifiedArgumentGrammar.GetParser()));
 }