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 }