Example #1
0
        public static ParseException LongOptionNameIsOneCharacter(TextBuffer reader, int position, string name)
        {
            var token  = new CommandTreeToken(CommandTreeToken.Kind.LongOption, position, name, $"--{name}");
            var reason = $"Did you mean -{name}?";

            return(ParseExceptionFactory.Create(reader.Original, token, "Invalid long option name.", reason));
        }
Example #2
0
        public static ParseException LongOptionNameContainSymbol(TextBuffer reader, int position, char character)
        {
            var name  = character.ToString();
            var token = new CommandTreeToken(CommandTreeToken.Kind.LongOption, position, name, name);

            return(ParseExceptionFactory.Create(reader.Original, token, "Invalid long option name.", "Invalid character."));
        }
Example #3
0
        public static ParseException UnknownCommand(CommandModel model, CommandTree node, IEnumerable <string> args, CommandTreeToken token)
        {
            var availableCommands = node?.Command ?? (ICommandContainer)model;
            var suggestion        = CommandSuggestor.Suggest(model, node?.Command, token.Value);

            var text = suggestion != null ? $"Did you mean '{suggestion.Name}'?" : "No such command.";

            return(ParseExceptionFactory.Create(args, token, $"Unknown command '{token.Value}'.", text));
        }
Example #4
0
 public static ParseException UnterminatedQuote(string input, CommandTreeToken token)
 {
     return(ParseExceptionFactory.Create(input, token, $"Encountered unterminated quoted string '{token.Value}'.", "Did you forget the closing quotation mark?"));
 }
Example #5
0
        public static ParseException LongOptionNameStartWithDigit(TextBuffer reader, int position, string name)
        {
            var token = new CommandTreeToken(CommandTreeToken.Kind.LongOption, position, name, $"--{name}");

            return(ParseExceptionFactory.Create(reader.Original, token, "Invalid long option name.", "Option names cannot start with a digit."));
        }
Example #6
0
        public static ParseException LongOptionNameIsMissing(TextBuffer reader, int position)
        {
            var token = new CommandTreeToken(CommandTreeToken.Kind.LongOption, position, string.Empty, "--");

            return(ParseExceptionFactory.Create(reader.Original, token, "Invalid long option name.", "Did you forget the option name?"));
        }
Example #7
0
 public static ParseException InvalidShortOptionName(string input, CommandTreeToken token)
 {
     return(ParseExceptionFactory.Create(input, token, "Short option does not have a valid name.", "Not a valid name for a short option."));
 }
Example #8
0
 public static ParseException CannotAssignValueToFlag(IEnumerable <string> args, CommandTreeToken token)
 {
     return(ParseExceptionFactory.Create(args, token, "Flags cannot be assigned a value.", "Can't assign value."));
 }
Example #9
0
 public static ParseException UnexpectedOption(IEnumerable <string> args, CommandTreeToken token)
 {
     return(ParseExceptionFactory.Create(args, token, $"Unexpected option '{token.Value}'.", "Did you forget the command?"));
 }
Example #10
0
 public static ParseException OptionHasNoValue(IEnumerable <string> args, CommandTreeToken token, CommandOption option)
 {
     return(ParseExceptionFactory.Create(args, token, $"Option '{option.GetOptionName()}' is defined but no value has been provided.", "No value provided."));
 }
Example #11
0
 public static ParseException OptionValueWasExpected(string input, CommandTreeToken token)
 {
     return(ParseExceptionFactory.Create(input, token, "Expected an option value.", "Did you forget the option value?"));
 }
Example #12
0
 public static ParseException OptionHasNoName(string input, CommandTreeToken token)
 {
     return(ParseExceptionFactory.Create(input, token, "Option does not have a name.", "Did you forget the option name?"));
 }
Example #13
0
 public static ParseException UnknownOption(IEnumerable <string> args, CommandTreeToken token)
 {
     return(ParseExceptionFactory.Create(args, token, $"Unknown option '{token.Value}'.", "Unknown option."));
 }
Example #14
0
 public static ParseException CouldNotMatchArgument(IEnumerable <string> args, CommandTreeToken token)
 {
     return(ParseExceptionFactory.Create(args, token, $"Could not match '{token.Value}' with an argument.", "Could not match to argument."));
 }