public override bool Do <T>(IUserInterfaceInput <T> input, out T output) { output = default; var validInput = false; while (!validInput) { Console.WriteLine(); Console.Write($"{GetIndentString(Indent)}{input.Prompt}: "); var inputString = Console.ReadLine(); if (input.IsValid(inputString)) { validInput = input.Cast(inputString, out output); } } return(true); }
public abstract bool Do <T>(IUserInterfaceInput <T> input, out T output);