public override IPreParsingState MoveToNext(string argument) { if (IsEndOfArguments(argument)) { return(null); } IPreParsingState handleKeyValueOptionState = HandleKeyValueOptionArgument( command, resultBuilder, argument); if (handleKeyValueOptionState != null) { return(handleKeyValueOptionState); } IPreParsingState handleFlagOptionState = HandleFlagOptionArgument( command, resultBuilder, argument); if (handleFlagOptionState != null) { return(handleFlagOptionState); } return(HandleFreeValueArgument(command, resultBuilder, argument)); }
public override IPreParsingState MoveToNext(string argument) { if (IsEndOfArguments(argument)) { return(HandleEndOfArgument()); } ICommandDefinition selectedCommand = ResolveCommand(argument); if (selectedCommand != null) { resultBuilder.SetCommand(selectedCommand); return(new ContinueState(selectedCommand, resultBuilder)); } selectedCommand = EnsureDefaultCommandSet(argument); IPreParsingState nextStateForKeyValueOption = HandleKeyValueOptionArgument( selectedCommand, resultBuilder, argument); if (nextStateForKeyValueOption != null) { return(nextStateForKeyValueOption); } IPreParsingState nextStateForFlagOption = HandleFlagOptionArgument(selectedCommand, resultBuilder, argument); if (nextStateForFlagOption != null) { return(nextStateForFlagOption); } return(HandleFreeValueArgument(selectedCommand, resultBuilder, argument)); }