package Ġarrow . meta . quotes . scope Ċ Ċ import Ġarrow . meta . plugin . testing . Compiler Test Ċ import Ġarrow . meta . plugin . testing . Compiler Test . Companion . source Ċ import Ġarrow . meta . plugin . testing . assert This Ċ import Ġio . kot lint est . specs . Annotation Spec Ċ Ċ // ĠTODO Ġimplement Ġconvert Finally Ġin ĠConverter Ġto Ġsupport ĠFIN ALLY Ġin ĠAST Ċ Ċ class ĠFinally Section Test Ġ: ĠAnnotation Spec () Ġ{ ĊĊĠ Ġprivate Ġval Ġfinally Section Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġpackage Ġ 4 7 deg . arrow - meta ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ// meta debug ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġfun Ġmeasure Time Millis ( block : Ġ() Ġ-> ĠUnit ): ĠLong Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| ĠĠĠ Ġval Ġstart Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| ĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġblock () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| ĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġreturn ĠSystem . currentTimeMillis () Ġ- Ġstart ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| ĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ""" . source ĊĊĠ Ġ@ Ignore ĊĠ Ġ@ Test ĊĠ Ġfun Ġ` Validate Ġfinally Ġsection Ġscope Ġproperties `() Ġ{ ĊĠĠĠ Ġassert This ( Compiler Test ( ĊĠĠĠĠĠ Ġconfig Ġ= Ġ{ ĠlistOf ( add Meta Plugins ()) Ġ}, Ġ Ġ// ĠTODO Ġcreate Ġa Ġscope Ġplugin Ġfor Ġfinally Ġsection ĊĠĠĠĠĠ Ġcode Ġ= Ġ{ Ġfinally Section Ġ}, ĊĠĠĠĠĠ Ġassert Ġ= Ġ{ Ġquote Output Matches ( finally Section ) Ġ} ĊĠĠĠ Ġ)) ĊĠ Ġ} Ċ } Ċ