/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 1 9 ĠJetBrains Ġs . r . o . Ġand ĠKotlin ĠProgramming ĠLanguage Ġcontributors . Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe Ġlicense / LICENSE . txt Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . jetbrains . kotlin . fir . resolve . calls Ċ Ċ import Ġkotlin . coroutines . Continuation Ċ Ċ interface ĠCheck er Sink Ġ{ ĊĠĠĠ Ġfun Ġreport Applic ability ( new : ĠC andidate Applic ability ) ĊĠĠĠ Ġsuspend Ġfun Ġyield () ĊĠĠĠ Ġsuspend Ġfun Ġyield Applic ability ( new : ĠC andidate Applic ability ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreport Applic ability ( new ) ĊĠĠĠĠĠĠĠ Ġyield () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġcomponents : ĠInference Components ĊĊĠĠĠ Ġsuspend Ġfun Ġyield If Need () Ċ } Ċ Ċ class ĠCheck er Sink Impl ( override Ġval Ġcomponents : ĠInference Components , Ġvar Ġcontinuation : ĠContinu ation < Unit >? Ġ= Ġnull ) Ġ: ĠCheck er Sink Ġ{ ĊĠĠĠ Ġvar Ġcurrent Ġ= ĠC andidate Applic ability . RESOL VED ĊĠĠĠ Ġoverride Ġfun Ġreport Applic ability ( new : ĠC andidate Applic ability ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( new Ġ< Ġcurrent ) Ġcurrent Ġ= Ġnew ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġyield () Ġ= Ġkotlin . coroutines . intr insics . suspend Coroutine Un intercept ed Or Return < Unit > Ġ{ ĊĠĠĠĠĠĠĠ Ġcontinuation Ġ= Ġit ĊĠĠĠĠĠĠĠ Ġkotlin . coroutines . intr insics . COR OUT INE _ SUS PEN DED ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġsuspend Ġfun Ġyield If Need () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( current Ġ< ĠC andidate Applic ability . SYN TH ET IC _ RESOL VED ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġyield () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ