I implemented a simple Continuation interceptor fo...
# javascript
h
I implemented a simple Continuation interceptor for JS
Copy code
private class Cont<T>(val cont:Continuation<T>) : Continuation<T> {
    override val context = cont.context
    override fun resumeWith(result: Result<T>) {
        window.requestAnimationFrame{cont.resumeWith(result)}
    }
}
object JsInterceptor:AbstractCoroutineContextElement(ContinuationInterceptor), ContinuationInterceptor{
    override fun <T> interceptContinuation(cont:Continuation<T>): Continuation<T> =
            Cont(cont)
}
and use case
Copy code
GlobalScope.launch(JsInterceptor){
  ...
}