scala.tools.nsc.matching

# ParallelMatching

#### trait ParallelMatching extends TreeDSL with MatchSupport with Matrix with Patterns with PatternBindings

Self Type
  ExplicitOuter

Linear Supertypes
PatternBindings, Patterns, Matrix, MatrixAdditions, MatchSupport, TreeDSL, AnyRef, Any
Known Subclasses
ExplicitOuter, explicitOuter
Type Hierarchy Learn more about scaladoc diagrams
Ordering

1. Alphabetic
2. By inheritance

Inherited

1. ParallelMatching
2. PatternBindings
3. Patterns
4. Matrix
5. MatrixAdditions
6. MatchSupport
7. TreeDSL
8. AnyRef
9. Any

Implicitly

1. by any2stringadd
2. by any2stringfmt
3. by any2ArrowAssoc
4. by any2Ensuring

1. Hide All
2. Show all

Learn more about member selection
Visibility

1. Public
2. All

### Type Members

1. #### case class AlternativePattern (tree: Global.Alternative) extends transform.ExplicitOuter.Pattern with Product with Serializable

   Definition Classes
     Patterns

2. #### case class ApplyIdentPattern (tree: Global.Apply) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.ApplyPattern with transform.ExplicitOuter.NamePattern with Product with Serializable

   Definition Classes
     Patterns

3. #### sealed trait ApplyPattern extends transform.ExplicitOuter.Pattern

   Definition Classes
     Patterns

4. #### case class ApplySelectPattern (tree: Global.Apply) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.ApplyPattern with transform.ExplicitOuter.SelectPattern with Product with Serializable

   Definition Classes
     Patterns

5. #### case class Binding (pvar: Global.Symbol, tvar: Global.Symbol) extends Product with Serializable

   Definition Classes
     PatternBindings

6. #### class Bindings extends AnyRef

   Definition Classes
     PatternBindings

7. #### case class ConstructorPattern (tree: Global.Apply) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.ApplyPattern with transform.ExplicitOuter.NamePattern with Product with Serializable

   Definition Classes
     Patterns

8. #### case class ExtractorPattern (tree: Global.UnApply) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.UnapplyPattern with Product with Serializable

   Definition Classes
     Patterns

9. #### case class ListExtractorPattern (tree: Global.UnApply, tpt: Global.Tree, elems: List[Global.Tree]) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.UnapplyPattern with transform.ExplicitOuter.SequenceLikePattern with Product with Serializable

   Definition Classes
     Patterns

10. #### case class LiteralPattern (tree: Global.Literal) extends transform.ExplicitOuter.Pattern with Product with Serializable

    Definition Classes
      Patterns

11. #### abstract class MatchMatrix extends transform.ExplicitOuter.MatchMatrixOptimizer with transform.ExplicitOuter.MatrixExhaustiveness

    The umbrella matrix class.

12. #### case class MatrixContext (cunit: Global.CompilationUnit, handleOuter: (Global.Tree) ⇒ Global.Tree, typer: (analyzer)#Typer, owner: Global.Symbol, matchResultType: Global.Type) extends (Matrix.this)#Squeezer with Product with Serializable

    Definition Classes
      Matrix

13. #### sealed trait NamePattern extends transform.ExplicitOuter.Pattern

    Definition Classes
      Patterns

14. #### case class ObjectPattern (tree: Global.Apply) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.ApplyPattern with Product with Serializable

    Definition Classes
      Patterns

15. #### sealed abstract class Pattern extends transform.ExplicitOuter.PatternBindingLogic

    Definition Classes
      Patterns

16. #### trait PatternBindingLogic extends AnyRef

    Definition Classes
      PatternBindings

17. #### type PatternMatch = MatchMatrix.PatternMatch

    Definition Classes
      Patterns

18. #### case class PseudoType (o: Global.Tree) extends Global.Type with Global.SimpleTypeProxy with Product with Serializable

    Definition Classes
      PatternBindings

19. #### sealed trait SelectPattern extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.NamePattern

    Some intermediate pattern classes with shared structure *

20. #### trait SequenceLikePattern extends transform.ExplicitOuter.Pattern

    Definition Classes
      Patterns

21. #### case class SequencePattern (tree: Global.ArrayValue) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.SequenceLikePattern with Product with Serializable

    Definition Classes
      Patterns

22. #### case class SimpleIdPattern (tree: Global.Ident) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.NamePattern with Product with Serializable

    Definition Classes
      Patterns

23. #### case class StableIdPattern (tree: Global.Select) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.SelectPattern with Product with Serializable

    Definition Classes
      Patterns

24. #### case class StarPattern (tree: Global.Star) extends transform.ExplicitOuter.Pattern with Product with Serializable

    Definition Classes
      Patterns

25. #### case class ThisPattern (tree: Global.This) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.NamePattern with Product with Serializable

    Definition Classes
      Patterns

26. #### case class TuplePattern (tree: Global.Apply) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.ApplyPattern with Product with Serializable

    Definition Classes
      Patterns

27. #### case class TypedPattern (tree: Global.Typed) extends transform.ExplicitOuter.Pattern with Product with Serializable

    Definition Classes
      Patterns

28. #### sealed trait UnapplyPattern extends transform.ExplicitOuter.Pattern

    Definition Classes
      Patterns

29. #### case class VariablePattern (tree: Global.Ident) extends transform.ExplicitOuter.Pattern with transform.ExplicitOuter.NamePattern with Product with Serializable

    Definition Classes
      Patterns

30. #### case class WildcardPattern () extends transform.ExplicitOuter.Pattern with Product with Serializable

    Definition Classes
      Patterns

### Abstract Value Members

1. #### abstract val global: Global

   Definition Classes
     TreeDSL

### Concrete Value Members

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

   Definition Classes
     AnyRef

2. #### final def !=(arg0: Any): Boolean

   Definition Classes
     Any

3. #### final def ##(): Int

   Definition Classes
     AnyRef → Any

4. #### def +(other: String): String

   Implicit information
     This member is added by an implicit conversion from ParallelMatching to StringAdd performed by method any2stringadd in scala.Predef.
   Definition Classes
     StringAdd

5. #### def ->[B](y: B): (ParallelMatching, B)

   Implicit information
     This member is added by an implicit conversion from ParallelMatching to ArrowAssoc[ParallelMatching] performed by method any2ArrowAssoc in scala.Predef.
   Definition Classes
     ArrowAssoc
   Annotations
     @inline()

6. #### final def ==(arg0: AnyRef): Boolean

   Definition Classes
     AnyRef

7. #### final def ==(arg0: Any): Boolean

   Definition Classes
     Any

8. #### object ApplyPattern

   Definition Classes
     Patterns

9. #### object CODE

   Definition Classes
     TreeDSL

10. #### object Debug

    Definition Classes
      MatchSupport

11. #### def NilPattern: transform.ExplicitOuter.Pattern

    Definition Classes
      Patterns

12. #### val NoBinding: transform.ExplicitOuter.Bindings

    Definition Classes
      PatternBindings

13. #### def NoPattern: transform.ExplicitOuter.WildcardPattern

    Definition Classes
      Patterns

14. #### def NullPattern: transform.ExplicitOuter.LiteralPattern

    Definition Classes
      Patterns

15. #### object Pattern

    Definition Classes
      Patterns

16. #### object Types

    Definition Classes
      MatchSupport

17. #### object UnapplyParamType

    * Extractors **

18. #### object UnapplyPattern

    Definition Classes
      Patterns

19. #### final def asInstanceOf[T0]: T0

    Definition Classes
      Any

20. #### def clone(): AnyRef

    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

21. #### def decodedEqualsType(tpe: Global.Type): Global.Type

    Definition Classes
      PatternBindings

22. #### def dropIndex[T](xs: List[T], n: Int): collection.immutable.List[T]

    Drops the 'i'th element of a list.

    Drops the 'i'th element of a list.

    Definition Classes
      MatchSupport

23. #### def emptyPatterns(i: Int): List[transform.ExplicitOuter.Pattern]

    Definition Classes
      Patterns

24. #### def emptyTrees(i: Int): List[Global.Tree]

    Definition Classes
      Patterns

25. #### def ensuring(cond: (ParallelMatching) ⇒ Boolean, msg: ⇒ Any): ParallelMatching

    Implicit information
      This member is added by an implicit conversion from ParallelMatching to Ensuring[ParallelMatching] performed by method any2Ensuring in scala.Predef.
    Definition Classes
      Ensuring

26. #### def ensuring(cond: (ParallelMatching) ⇒ Boolean): ParallelMatching

    Implicit information
      This member is added by an implicit conversion from ParallelMatching to Ensuring[ParallelMatching] performed by method any2Ensuring in scala.Predef.
    Definition Classes
      Ensuring

27. #### def ensuring(cond: Boolean, msg: ⇒ Any): ParallelMatching

    Implicit information
      This member is added by an implicit conversion from ParallelMatching to Ensuring[ParallelMatching] performed by method any2Ensuring in scala.Predef.
    Definition Classes
      Ensuring

28. #### def ensuring(cond: Boolean): ParallelMatching

    Implicit information
      This member is added by an implicit conversion from ParallelMatching to Ensuring[ParallelMatching] performed by method any2Ensuring in scala.Predef.
    Definition Classes
      Ensuring

29. #### final def eq(arg0: AnyRef): Boolean

    Definition Classes
      AnyRef

30. #### def equals(arg0: Any): Boolean

    Definition Classes
      AnyRef → Any

31. #### def extractBindings(p: transform.ExplicitOuter.Pattern): List[transform.ExplicitOuter.Pattern]

    Definition Classes
      PatternBindings

32. #### def extractIndex[T](xs: List[T], n: Int): (T, List[T])

    Extract the nth element of a list and return it and the remainder.

    Extract the nth element of a list and return it and the remainder.

    Definition Classes
      MatchSupport

33. #### def finalize(): Unit

    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( classOf[java.lang.Throwable] )

34. #### def formatted(fmtstr: String): String

    Implicit information
      This member is added by an implicit conversion from ParallelMatching to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
      StringFormat
    Annotations
      @inline()

35. #### final def getClass(): Class[_]

    Definition Classes
      AnyRef → Any

36. #### def handlePattern(selector: Global.Tree, cases: List[Global.CaseDef], isChecked: Boolean, context: transform.ExplicitOuter.MatrixContext): Global.Tree

    Handles all translation of pattern matching.

    Handles all translation of pattern matching.

    Definition Classes
      Matrix

37. #### def hashCode(): Int

    Definition Classes
      AnyRef → Any

38. #### def impossible: Nothing

    Definition Classes
      MatchSupport

39. #### def isEquals(tpe: Global.Type): Boolean

    EqualsPattern *

    EqualsPattern *

    Definition Classes
      PatternBindings

40. #### def isEquivalentTree(t1: Global.Tree, t2: Global.Tree): Boolean

    Definition Classes
      PatternBindings

41. #### final def isInstanceOf[T0]: Boolean

    Definition Classes
      Any

42. #### def matches(arg1: Global.Type, arg2: Global.Type): Boolean

    Definition Classes
      PatternBindings

43. #### def mkEqualsRef(tpe: Global.Type): Global.Type

    Definition Classes
      PatternBindings

44. #### def moveBindings(oldTree: Global.Tree, newTree: Global.Tree): Global.Tree

    Definition Classes
      PatternBindings

45. #### final def ne(arg0: AnyRef): Boolean

    Definition Classes
      AnyRef

46. #### final def notify(): Unit

    Definition Classes
      AnyRef

47. #### final def notifyAll(): Unit

    Definition Classes
      AnyRef

48. #### final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
      AnyRef

49. #### def toPats(xs: List[Global.Tree]): List[transform.ExplicitOuter.Pattern]

    Transition *

50. #### def toString(): String

    Definition Classes
      AnyRef → Any

51. #### def treeCollect[T](tree: Global.Tree, pf: PartialFunction[Global.Tree, T]): List[T]

    Definition Classes
      MatchSupport

52. #### final def wait(): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

53. #### final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

54. #### final def wait(arg0: Long): Unit

    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

55. #### def →[B](y: B): (ParallelMatching, B)

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

### Shadowed Implicit Value Members

1. #### val self: Any

   Implicit information
     This member is added by an implicit conversion from ParallelMatching to StringAdd performed by method any2stringadd in scala.Predef.
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (parallelMatching: StringAdd).self

   Definition Classes
     StringAdd

2. #### val self: Any

   Implicit information
     This member is added by an implicit conversion from ParallelMatching to StringFormat performed by method any2stringfmt in scala.Predef.
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (parallelMatching: StringFormat).self

   Definition Classes
     StringFormat

### Deprecated Value Members

1. #### def x: ParallelMatching

   Implicit information
     This member is added by an implicit conversion from ParallelMatching to ArrowAssoc[ParallelMatching] performed by method any2ArrowAssoc in scala.Predef.
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (parallelMatching: ArrowAssoc[ParallelMatching]).x

   Definition Classes
     ArrowAssoc
   Annotations
     @deprecated
   Deprecated

     (Since version 2.10.0) Use `leftOfArrow`instead``

2. #### def x: ParallelMatching

   Implicit information
     This member is added by an implicit conversion from ParallelMatching to Ensuring[ParallelMatching] performed by method any2Ensuring in scala.Predef.
   Shadowing
     This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
     To access this member you can use a type ascription:

         (parallelMatching: Ensuring[ParallelMatching]).x

   Definition Classes
     Ensuring
   Annotations
     @deprecated
   Deprecated

     (Since version 2.10.0) Use `resultOfEnsuring`instead``

### Inherited from PatternBindings

### Inherited from Patterns

### Inherited from Matrix

### Inherited from MatrixAdditions

### Inherited from MatchSupport

### Inherited from TreeDSL

### Inherited from AnyRef

### Inherited from Any

### Inherited by implicit conversion any2stringadd from ParallelMatching to StringAdd

### Inherited by implicit conversion any2stringfmt from ParallelMatching to StringFormat

### Inherited by implicit conversion any2ArrowAssoc from ParallelMatching to ArrowAssoc[ParallelMatching]

### Inherited by implicit conversion any2Ensuring from ParallelMatching to Ensuring[ParallelMatching]

### Ungrouped