summaryrefslogtreecommitdiff
path: root/examples/scala-js/library/src/main/scala/scala/scalajs/concurrent/JSExecutionContext.scala
blob: c159dcbb1061a8fb57aa3cf61bec64b510581a59 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package scala.scalajs.concurrent

import scala.concurrent.ExecutionContext

/**
 * Execution contexts for use in JavaScript
 *
 * Enables the use of Futures/Promises
 * @author Tobias Schlatter
 */
object JSExecutionContext {

  /** execution context that runs immediately. beware of stack growth! */
  val runNow = RunNowExecutionContext
  /** execution context that submits into the JavaScript runtime's
    * task queue */
  val queue  = QueueExecutionContext

  object Implicits {
    implicit val runNow: ExecutionContext = JSExecutionContext.runNow
    implicit val queue:  ExecutionContext = JSExecutionContext.queue
  }

}