scala.tools.nsc.matching.ParallelMatching

MatchMatrix

class MatchMatrix extends MatchMatrixOptimizer with MatrixExhaustiveness

The umbrella matrix class. *

Attributes
abstract
Source
ParallelMatching.scala
Linear Supertypes
MatrixExhaustiveness, MatchMatrixOptimizer, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. MatchMatrix
  2. MatrixExhaustiveness
  3. MatchMatrixOptimizer
  4. AnyRef
  5. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new MatchMatrix (context: MatrixContext)

Type Members

  1. case class FinalState (bx: Int, params: List[Symbol], body: Tree) extends State with Product with Serializable

  2. case class LiteralState (bx: Int, params: List[Symbol], body: Tree) extends State with Product with Serializable

  3. class MixEquals extends RuleApplication

  4. class MixLiteralInts extends RuleApplication

  5. class MixSequence extends RuleApplication

    Handle Sequence patterns (including Star patterns.

  6. class MixTypes extends RuleApplication

    Mixture rule for type tests.

  7. class MixUnapply extends RuleApplication

    mixture rule for unapply pattern

  8. case class PatternMatch (scrut: Scrutinee, ps: List[Pattern]) extends Product with Serializable

  9. class PatternSwitch extends PatternMatch

  10. case class Rep (tvars: PatternVarGroup, rows: List[Row]) extends Product with Serializable

  11. case class Row (pats: List[Pattern], subst: Bindings, guard: Tree, bx: Int) extends Product with Serializable

    * States, Rows, Etc.

  12. class RuleApplication extends AnyRef

    *** Rule Applications ****

  13. class Scrutinee extends AnyRef

    Encapsulates a symbol being matched on.

  14. class State extends AnyRef

    Attributes
    abstract
  15. case class VariableRule (subst: Bindings, guard: Tree, guardedRest: Rep, bx: Int) extends RuleApplication with Product with Serializable

    VariableRule: The top-most rows has only variable (non-constructor) patterns.

Abstract Value Members

  1. def data : MatrixInit

    Attributes
    abstract

Concrete Value Members

  1. def != (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  2. def != (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  3. def ## (): Int

    Attributes
    final
    Definition Classes
    AnyRef → Any
  4. def == (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  5. def == (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  6. def addOuterCondition (cond: Tree, tpe2test: Type, scrut: Tree): Tree

    adds a test comparing the dynamic outer to the static outer

    adds a test comparing the dynamic outer to the static outer

    Attributes
    final
  7. def asInstanceOf [T0] : T0

    Attributes
    final
    Definition Classes
    Any
  8. lazy val cases : List[CaseDef]

  9. def clone (): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  10. def condition (tpe: Type, scrutTree: Tree, isBound: Boolean): Tree

    Attributes
    final
  11. def condition (tpe: Type, scrut: Scrutinee, isBound: Boolean): Tree

    returns the condition in "if (cond) k1 else k2"

    returns the condition in "if (cond) k1 else k2"

    Attributes
    final
  12. val context : MatrixContext

  13. def createLabelDef (namePrefix: String, body: Tree, params: List[Symbol] = Nil, restpe: Type = matchResultType): LabelDef

  14. def createShortCut (theLabel: Symbol): Int

    Attributes
    final
  15. def eq (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  16. def equals (arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  17. def expand (roots: List[PatternVar], cases: List[CaseDef]): List[(Row, Product with Serializable with State)]

    Expands the patterns recursively.

    Expands the patterns recursively.

    Attributes
    final
  18. lazy val expansion : Rep

  19. lazy val failTree : Tree

  20. def finalize (): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  21. def getClass (): java.lang.Class[_]

    Attributes
    final
    Definition Classes
    AnyRef → Any
  22. def hashCode (): Int

    Definition Classes
    AnyRef → Any
  23. def isInstanceOf [T0] : Boolean

    Attributes
    final
    Definition Classes
    Any
  24. def isPatternSwitch (scrut: Scrutinee, ps: List[Pattern]): Option[PatternSwitch]

  25. def make (roots1: PatternVarGroup, rows1: List[Row]): Rep

    This is the recursively focal point for translating the current list of pattern variables and a list of pattern match rows into a tree suitable for entering erasure.

    This is the recursively focal point for translating the current list of pattern variables and a list of pattern match rows into a tree suitable for entering erasure.

    The first time it is called, the variables are (copies of) the original pattern matcher roots, and the rows correspond to the original casedefs.

    Attributes
    final
  26. def ne (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  27. def notify (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  28. def notifyAll (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  29. def optimize (tree: Tree): Tree

    Attributes
    final
    Definition Classes
    MatchMatrixOptimizer
  30. lazy val roots : List[PatternVar]

  31. lazy val rows : List[Row]

  32. def synchronized [T0] (arg0: ⇒ T0): T0

    Attributes
    final
    Definition Classes
    AnyRef
  33. lazy val targets : List[Product with Serializable with State]

  34. def toString (): String

    Definition Classes
    MatchMatrix → AnyRef → Any
  35. def wait (): Unit

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

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

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from MatrixExhaustiveness

Inherited from MatchMatrixOptimizer

Inherited from AnyRef

Inherited from Any