public ParsedCommandLineParameters ParseCommandLineParameters(string[] args) { var result = new ParsedCommandLineParameters(); var remainingArguments = new List <string>(); for (int i = 0; i < args.Length; i++) { var arg = args[i]; if (arg.StartsWith("/")) { ParsedCommandLineParameter parameter = ParseParameter(args, ref i); if (parameter != null) { result.Parameters.Add(parameter); } } else { remainingArguments.Add(arg); } } result.RemainingArguments = remainingArguments.ToArray(); return(result); }
public void IfParameterDo(string name, Action <string> withParameter) { ParsedCommandLineParameter parameter = Parameters.FirstOrDefault(p => p.Name == name); if (parameter != null) { Parameters.Remove(parameter); withParameter(parameter.Value); } }