Packages

final class Local[T] extends AnyRef

A Local is a ThreadLocal whose scope is flexible. The state of all Locals may be saved or restored onto the current thread by the user. This is useful for threading Locals through execution contexts.

Promises pass locals through control dependencies, not through data dependencies. This means that Locals have exactly the same semantics as ThreadLocals, if you think of continue (the asynchronous sequence operator) as semicolon (the synchronous sequence operator).

Because it's not meaningful to inherit control from two places, Locals don't have to worry about having to merge two Contexts.

Note: the implementation is optimized for situations in which save and restore optimizations are dominant.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Local
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new Local()

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def apply(): Option[T]

    Get the Local's optional value.

  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clear(): Unit

    Clear the Local's value.

    Clear the Local's value. Other Locals are not modified.

    General usage should be via letClear to avoid leaks.

  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  11. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. def let[U](value: T)(f: => U): U

    Execute a block with a specific Local value, restoring the current state upon completion.

  15. def letClear[U](f: => U): U

    Execute a block with the Local cleared, restoring the current state upon completion.

  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. def set(optValue: Option[T]): Unit

    Update the Local with a given optional value.

    Update the Local with a given optional value.

    General usage should be via let to avoid leaks.

  20. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  21. def threadLocalGetter(): ThreadLocalGetter[T]

    Creates a lightweight getter for the current thread.

    Creates a lightweight getter for the current thread.

    IMPORTANT: The returned getter *MUST* be used only by the thread that creates it.

    This method is useful to avoid performance overhead if a local needs to be accessed several times by the same thread.

  22. def toString(): String
    Definition Classes
    AnyRef → Any
  23. def update(value: T): Unit

    Update the Local with a given value.

    Update the Local with a given value.

    General usage should be via let to avoid leaks.

  24. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  25. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  26. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AnyRef

Inherited from Any

Ungrouped