/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 1 8 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ċ Ġ* Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ Ġ*/ Ċ Ċ package Ġcodegen . local Class . virtual Call From Constructor Ċ Ċ import Ġkotlin . test .* Ċ Ċ abstract Ġclass ĠWaitFor Ġ{ ĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġcondition () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġabstract Ġfun Ġcondition (): ĠBoolean ; Ċ } Ċ Ċ fun Ġbox (): ĠString Ġ{ ĊĠĠĠ Ġval Ġlocal Ġ= Ġ"" ĊĠĠĠ Ġvar Ġresult Ġ= Ġ" fail " ĊĠĠĠ Ġval Ġs Ġ= Ġobject Ġ: ĠWaitFor () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcondition (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult Ġ= Ġ" OK " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġresult . length Ġ== Ġ 2 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn Ġresult ; Ċ } Ċ Ċ @ Test Ġfun Ġrun Test () Ġ{ ĊĠĠĠ Ġprintln ( box ()) Ċ }