Esempio n. 1
0
        public static CommandExecutionResult Execute(this ParseResult parseResult)
        {
            if (parseResult == null)
            {
                throw new ArgumentNullException(nameof(parseResult));
            }

            var command = parseResult.Command();

            if (command != null)
            {
                var value = parseResult[command.Name].Value();
            }

            return(new CommandExecutionResult(parseResult));
        }
Esempio n. 2
0
        public override string ToString()
        {
            if (parseResult.Errors.Any())
            {
                var builder = new StringBuilder();

                foreach (var error in parseResult.Errors)
                {
                    builder.AppendLine(error.ToString());
                }

                builder.Append(parseResult.Command().HelpView());

                return(builder.ToString());
            }

            return("");
        }
Esempio n. 3
0
        public static AppliedOption AppliedCommand(this ParseResult result)
        {
            var commandPath = result
                              .Command()
                              .RecurseWhileNotNull(c => c.Parent as Command)
                              .Select(c => c.Name)
                              .Reverse()
                              .ToArray();

            var option = result[commandPath.First()];

            foreach (var commandName in commandPath.Skip(1))
            {
                option = option[commandName];
            }

            return(option);
        }