/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 2 0 ĠO leg ĠI v ash ch enko Ġ< o leg ivo @ gmail . com > Ċ Ġ* Ċ Ġ* ĠThis Ġfile Ġis Ġpart Ġof ĠA FS . Ċ Ġ* Ċ Ġ* ĠA FS Ġis Ġfree Ġsoftware : Ġyou Ġcan Ġredistribute Ġit Ġand / or Ġmodify Ċ Ġ* Ġit Ġunder Ġthe Ġterms Ġof Ġthe ĠMIT ĠLicense . Ċ Ġ* Ċ Ġ* ĠA FS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR Ċ Ġ* ĠIMPLIED , ĠINCLUDING ĠBUT ĠNOT ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , Ċ Ġ* ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN ĠNO ĠEVENT ĠSHALL ĠTHE Ċ Ġ* ĠAUTHORS ĠOR ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER Ċ Ġ* ĠLIABILITY , ĠWHETHER ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING ĠFROM , Ċ Ġ* ĠOUT ĠOF ĠOR ĠIN ĠCONNECTION ĠWITH ĠTHE ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER ĠDEALINGS ĠIN ĠTHE Ċ Ġ* ĠA FS . Ċ Ġ*/ Ċ Ċ package Ġru . o leg ivo . af s . common Ċ Ċ import Ġkotlinx . coroutines . Coroutine Scope Ċ import Ġkotlinx . coroutines . rx 2 . rx Comp letable Ċ import Ġkotlinx . coroutines . rx 2 . rx Maybe Ċ import Ġkotlinx . coroutines . rx 2 . rx Single Ċ import Ġjavax . inject . Inject Ċ import Ġkotlin . coroutines . Coroutine Context Ċ import Ġkotlin . coroutines . Empty Coroutine Context Ċ Ċ class ĠCor outine To Rx Adapter Ġ@ Inject Ġconstructor () Ġ{ ĊĠĠĠ Ġvar Ġcoroutine Context : ĠCor outine Context Ġ= ĠEmpty Coroutine Context ĊĊĠĠĠ Ġfun Ġ< T Ġ: ĠAny > Ġrun To Single ( block : Ġsuspend ĠCor outine Scope . () Ġ-> ĠT ) Ġ= ĊĠĠĠĠĠĠĠ Ġrx Single ( coroutine Context , Ġblock ) ĊĊĠĠĠ Ġfun Ġ< T Ġ: ĠAny > Ġrun To Maybe ( block : Ġsuspend ĠCor outine Scope . () Ġ-> ĠT ?) Ġ= ĊĠĠĠĠĠĠĠ Ġrx Maybe ( coroutine Context , Ġblock ) ĊĊĠĠĠ Ġfun Ġrun To Comp letable ( block : Ġsuspend ĠCor outine Scope . () Ġ-> ĠUnit ) Ġ= ĊĠĠĠĠĠĠĠ Ġrx Comp letable ( coroutine Context , Ġblock ) Ċ } Ċ