@ file : Suppress (" unused ") Ċ Ċ package Ġdev . min ut est . internal Ċ Ċ import Ġjava . time . Duration Ċ import Ġjava . time . Instant Ċ Ċ internal Ġinline Ġfun Ġ< T > Ġtime ( ĊĠĠĠ Ġprefix : ĠString , ĊĠĠĠ Ġprinter : Ġ( String ) Ġ-> ĠUnit Ġ= Ġ:: println , ĊĠĠĠ Ġf : Ġ() Ġ-> ĠT Ċ ): ĠT Ġ{ ĊĠĠĠ Ġval Ġstart Ġ= ĠInstant . now () ĊĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġf () ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠ Ġprinter ( prefix Ġ+ ĠDuration . between ( start , ĠInstant . now ())) ĊĠĠĠ Ġ} Ċ } Ċ Ċ internal Ġfun Ġ< T > ĠT . print ed ( printer : Ġ( Any ?) Ġ-> ĠUnit Ġ= Ġ:: println ): ĠT Ġ{ ĊĠĠĠ Ġreturn Ġthis . also Ġ{ Ġprinter ( this ) Ġ} Ċ }