1 module dli.i_text_menu; 2 3 /// 4 public interface ITextMenu 5 { 6 /// Runs the menu 7 void run(); 8 9 /// Writes the argument to the output of the menu 10 void write(string s) 11 in 12 { 13 assert(s !is null); 14 } 15 16 /// Writes the argument plus a line terminator to the output of the menu 17 void writeln(string s) 18 in 19 { 20 assert(s !is null); 21 } 22 23 /// Reads a line from the input of the menu 24 string readln(); 25 }