package Ġapp . cash . chron ic ler . recorder Ċ Ċ import Ġapp . cash . chron ic ler . proto . Statement Ċ Ċ interface ĠStatement Sink Ġ{ ĊĠ Ġfun Ġaccept ( stmt : ĠStatement ) Ċ } Ċ Ċ inline Ġfun ĠStatement Sink ( cross inline Ġproc : Ġ( Statement ) Ġ-> ĠUnit ) Ġ= Ġobject Ġ: ĠStatement Sink Ġ{ ĊĠ Ġoverride Ġfun Ġaccept ( stmt : ĠStatement ) Ġ= Ġproc ( stmt ) Ċ } Ċ Ċ object ĠStatement Sink s Ġ{ ĊĠ Ġfun Ġdebug String Bridge ( delegate : Ġ( String ) Ġ-> ĠUnit ) Ġ= ĠStatement Sink Ġ{ Ġstatement Ġ-> ĊĠĠĠ Ġdelegate ( statement . toString ()) ĊĠ Ġ} ĊĊĠ Ġfun Ġdebug Stdout () Ġ= Ġdebug String Bridge (:: println ) ĊĊĠ Ġfun Ġnoop () Ġ= ĠStatement Sink Ġ{} Ċ } Ċ