package com.editev.chess.printer; import com.editev.util.Function; import com.editev.chess.Chess; import com.editev.chess.GameHTML; /** A Printer is a Function that prints to a GameHTML -- we put together Printers to display * an entire game as HTML. * * @see See the source here. */ abstract public class Printer extends Chess implements Function { /** Print to an instance of GameHTML. * @param gameHTML The GameHTML, which can also be */ abstract public void print( GameHTML gameHTML ); /** Print to a GameHTML and return the same object. */ public Object eval( Object gameHTML ) { print( (GameHTML) gameHTML ); return gameHTML; } }