Exemple #1
0
 //[GetHelp]
 public string GetUsage(CommandMetadata metadata, ParsingResult parsingResult)
 {
     return new StringBuilder(metadata.Name).AppendLine().AppendLine(metadata.Description)
         .AppendLine(string.Join(Environment.NewLine,
             parsingResult.Errors.Select(
                 err =>
                     (err.OptionMetadata.IsNamedOption
                         ? ((CommandNamedOptionMetadata)err.OptionMetadata).ShortName +
                           ((CommandNamedOptionMetadata)err.OptionMetadata).LongName
                         : string.Empty) + " " + err.OptionMetadata.ToString() + " - " + err.ParsingErrorBase.ToString()))).ToString();
 }
Exemple #2
0
 private static void ShowCommandHelp(object command, CommandMetadata metadata, ParsingResult parsingResult)
 {
     // ReSharper disable PossibleNullReferenceException
     if (metadata.HelpMethod == null) HelpBuilder.PrintCommandHelp(Output, metadata, AssemblyInfo, parsingResult);
     else
     {
         var parameters = new List<object>();
         foreach (var type in metadata.HelpMethod.GetParameters().Select(param => param.ParameterType))
             if (type == typeof(CommandMetadata)) parameters.Add(metadata);
             else parameters.Add(parsingResult);
         Output.WriteLine(metadata.HelpMethod.Invoke(command, parameters.ToArray()));
     }
     // ReSharper restore PossibleNullReferenceException
 }