Diff
Not logged in

Differences From Artifact [b38d60ea39d11e6e]:

To Artifact [f6cab5c23c5cba1e]:


5 import solver; 5 import solver; 6 6 7 class CUI(Solver) : GameObserver 7 class CUI(Solver) : GameObserver 8 { 8 { 9 this(in Game g) { solver = new Solver(g); } 9 this(in Game g) { solver = new Solver(g); } 10 Solver solver; 10 Solver solver; 11 bool fin; 11 bool fin; 12 override void on_game_changed(char c, in Game g, bool finished) | 12 override void on_game_changed(char c, in Game g, bool finished) { fin = 13 { < 14 fin = finished; < 15 } < 16 } 13 } 17 14 18 void main(string[] args) | 15 void main() 19 { 16 { 20 Driver d = new Driver(stdin); | 17 auto d = new Driver(stdin); 21 d.addObserver!(GuardedOutput)(); 18 d.addObserver!(GuardedOutput)(); 22 auto c = d.addObserver!(CUI!MainSolver)(); 19 auto c = d.addObserver!(CUI!MainSolver)(); 23 while(!c.fin) 20 while(!c.fin) 24 d.command(c.solver.single_step()); 21 d.command(c.solver.single_step()); 25 } 22 }