package Ġfoo Ċ Ċ var Ġg : ĠAny ? ĊĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠ Ġlog (" g . get ") ĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} ĊĠĠĠ Ġset ( v ) Ġ{ ĊĠĠĠĠĠĠĠ Ġlog (" g . set ") ĊĠĠĠ Ġ} Ċ Ċ public Ġinline Ġfun ĠArray < String >. b oo () Ġ{ ĊĠĠĠ Ġvar Ġa Ġ= Ġg ĊĠĠĠ Ġfor Ġ( element Ġin Ġthis ); Ċ } Ċ Ċ public Ġinline Ġfun ĠIterable < String >. b oo ( i : ĠAny ?) Ġ{ ĊĠĠĠ Ġvar Ġa Ġ= Ġi ĊĠĠĠ Ġfor Ġ( element Ġin Ġthis ); Ċ } Ċ Ċ fun Ġtest 1 ( f : Ġ() Ġ-> ĠArray < String >) Ġ{ ĊĠĠĠ Ġf (). b oo () Ċ } Ċ Ċ fun Ġtest 2 ( f : Ġ() Ġ-> ĠIterable < String >) Ġ{ ĊĠĠĠ Ġf (). b oo ( g ) Ċ } ĊĊ Ċ fun Ġbox (): ĠString Ġ{ ĊĠĠĠ Ġtest 1 Ġ{ Ġlog (" lambda 1 "); ĠarrayOf () Ġ} ĊĠĠĠ ĠassertEquals (" lambda 1 ; g . get ;", Ġpull Log ()) ĊĊĠĠĠ Ġtest 2 Ġ{ Ġlog (" lambda 2 "); ĠlistOf () Ġ} ĊĠĠĠ ĠassertEquals (" lambda 2 ; g . get ;", Ġpull Log ()) ĊĊĠĠĠ Ġreturn Ġ" OK " Ċ }