Class/Object

scala.scalajs.js

Promise

Related Docs: object Promise | package js

Permalink

class Promise[+A] extends Object with Thenable[A]

ECMAScript 6 Promise of an asynchronous result.

Attention! The nature of this class, from the ECMAScript specification, makes it inherently un-typeable, because it is not type parametric.

The signatures of the constructor and the methods then and catch are only valid provided that the values of A and B are not Thenables.

We recommend to use Scala's Futures instead of Promise as much as possible. A Promise can be converted to a Future with .toFuture and back with .toJSPromise (provided by JSConverters).

With

import scala.scalajs.js.Thenable.Implicits._

you can implicitly convert a Promise to a Future, and therefore you can directly use the methods of Future on Promises.

Annotations
@RawJSType() @native() @JSGlobal()
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Promise
  2. Thenable
  3. Object
  4. Any
  5. AnyRef
  6. Any
Implicitly
  1. by ThenableOps
  2. by any2stringadd
  3. by StringFormat
  4. by Ensuring
  5. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Promise(executor: Function2[Function1[|[A, Thenable[A]], _], Function1[scala.Any, _], _])

    Permalink

Value Members

  1. final def !=(arg0: scala.Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from Promise[A] to any2stringadd[Promise[A]] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (Promise[A], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from Promise[A] to ArrowAssoc[Promise[A]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: scala.Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def catch[B >: A](onRejected: UndefOr[Function1[scala.Any, |[B, Thenable[B]]]] = js.undefined): Promise[B]

    Permalink
  8. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  9. def ensuring(cond: (Promise[A]) ⇒ Boolean, msg: ⇒ scala.Any): Promise[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Promise[A] to Ensuring[Promise[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  10. def ensuring(cond: (Promise[A]) ⇒ Boolean): Promise[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Promise[A] to Ensuring[Promise[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: Boolean, msg: ⇒ scala.Any): Promise[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Promise[A] to Ensuring[Promise[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: Boolean): Promise[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Promise[A] to Ensuring[Promise[A]] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  14. def equals(arg0: scala.Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  15. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from Promise[A] to StringFormat[Promise[A]] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  17. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  18. def hasOwnProperty(v: String): Boolean

    Permalink

    Tests whether this object has the specified property as a direct property.

    Tests whether this object has the specified property as a direct property.

    Unlike js.Object.hasProperty, this method does not check down the object's prototype chain.

    MDN

    Definition Classes
    Object
  19. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  20. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  21. def isPrototypeOf(v: Object): Boolean

    Permalink

    Tests whether this object is in the prototype chain of another object.

    Tests whether this object is in the prototype chain of another object.

    Definition Classes
    Object
  22. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  23. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  24. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  25. val p: Thenable[A]

    Permalink
    Implicit information
    This member is added by an implicit conversion from Promise[A] to ThenableOps[A] performed by method ThenableOps in scala.scalajs.js.Thenable.
    Definition Classes
    ThenableOps
  26. def propertyIsEnumerable(v: String): Boolean

    Permalink

    Tests whether the specified property in an object can be enumerated by a call to js.Object.properties, with the exception of properties inherited through the prototype chain.

    Tests whether the specified property in an object can be enumerated by a call to js.Object.properties, with the exception of properties inherited through the prototype chain. If the object does not have the specified property, this method returns false.

    MDN

    Definition Classes
    Object
  27. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  28. def then[B >: A](onFulfilled: Unit, onRejected: UndefOr[Function1[scala.Any, |[B, Thenable[B]]]]): Thenable[B]

    Permalink
    Definition Classes
    PromiseThenable
  29. def then[B](onFulfilled: Function1[A, |[B, Thenable[B]]], onRejected: UndefOr[Function1[scala.Any, |[B, Thenable[B]]]] = js.undefined): Thenable[B]

    Permalink
    Definition Classes
    PromiseThenable
  30. def toFuture: Future[A]

    Permalink

    Converts the Thenable into a Scala Future.

    Converts the Thenable into a Scala Future.

    Unlike when calling the then methods of Thenable, the resulting Future is always properly typed, and operations on it will be well-typed in turn.

    Implicit information
    This member is added by an implicit conversion from Promise[A] to ThenableOps[A] performed by method ThenableOps in scala.scalajs.js.Thenable.
    Definition Classes
    ThenableOps
  31. def toLocaleString(): String

    Permalink
    Definition Classes
    Object
  32. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  33. def valueOf(): scala.Any

    Permalink
    Definition Classes
    Object
  34. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  35. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. def [B](y: B): (Promise[A], B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from Promise[A] to ArrowAssoc[Promise[A]] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from Thenable[A]

Inherited from Object

Inherited from Any

Inherited from AnyRef

Inherited from scala.Any

Inherited by implicit conversion ThenableOps from Promise[A] to ThenableOps[A]

Inherited by implicit conversion any2stringadd from Promise[A] to any2stringadd[Promise[A]]

Inherited by implicit conversion StringFormat from Promise[A] to StringFormat[Promise[A]]

Inherited by implicit conversion Ensuring from Promise[A] to Ensuring[Promise[A]]

Inherited by implicit conversion ArrowAssoc from Promise[A] to ArrowAssoc[Promise[A]]

Ungrouped