Packages

sealed abstract class InPhase extends AnyRef

A wrapper to allow actions to be associated to a Phase. This aids profiling, particularly where a actions occur in multiple threads, or out of order

When you are running a compilation task that involved some activity on a background thread (not the one running Global.compileUnits) the profiler is not aware of that thread and so cannot account for the activity.

By wrapping the activity in this class or one of it children the profiler (if enabled) is informed and the statistics can be gathered

No InPhase should run concurrently with another InPhase on the same thread - the statistics dont cope with nesting

Source
InPhase.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. InPhase
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from InPhase to any2stringadd[InPhase] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (InPhase, B)
    Implicit
    This member is added by an implicit conversion from InPhase to ArrowAssoc[InPhase] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  8. val comment: String
  9. def doAction[T](fn: ⇒ T): T
    Attributes
    protected[scala.tools.nsc.profile]
    Annotations
    @inline()
  10. def ensuring(cond: (InPhase) ⇒ Boolean, msg: ⇒ Any): InPhase
    Implicit
    This member is added by an implicit conversion from InPhase to Ensuring[InPhase] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  11. def ensuring(cond: (InPhase) ⇒ Boolean): InPhase
    Implicit
    This member is added by an implicit conversion from InPhase to Ensuring[InPhase] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: Boolean, msg: ⇒ Any): InPhase
    Implicit
    This member is added by an implicit conversion from InPhase to Ensuring[InPhase] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. def ensuring(cond: Boolean): InPhase
    Implicit
    This member is added by an implicit conversion from InPhase to Ensuring[InPhase] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  16. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from InPhase to StringFormat[InPhase] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  18. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  19. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  20. def idle(future: Future[_], duration: Duration = Duration.Inf): Unit

    If the compilation activity has some idle time waiting on a future, then this can be recorded by using this method to perform the wait for you.

    If the compilation activity has some idle time waiting on a future, then this can be recorded by using this method to perform the wait for you. This allow the profiler to distinguish idle time (waiting for some related activity to complete), from for example waiting on I/O

    future

    the future that you are waiting on

    duration

    the maximum duration to wait

  21. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  25. val phase: Phase
  26. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  27. def toString(): String
    Definition Classes
    AnyRef → Any
  28. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  29. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  31. def [B](y: B): (InPhase, B)
    Implicit
    This member is added by an implicit conversion from InPhase to ArrowAssoc[InPhase] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from InPhase to any2stringadd[InPhase]

Inherited by implicit conversion StringFormat from InPhase to StringFormat[InPhase]

Inherited by implicit conversion Ensuring from InPhase to Ensuring[InPhase]

Inherited by implicit conversion ArrowAssoc from InPhase to ArrowAssoc[InPhase]

Ungrouped