@@ -286,7 +286,7 @@ class PatternMatcherOld extends MiniPhase with DenotTransformer {
286
286
}
287
287
}
288
288
}
289
- final case class Suppression (exhaustive : Boolean , unreachable : Boolean )
289
+ /* final*/ case class Suppression (exhaustive : Boolean , unreachable : Boolean )
290
290
object Suppression {
291
291
val NoSuppression = Suppression (false , false )
292
292
}
@@ -1061,7 +1061,7 @@ class PatternMatcherOld extends MiniPhase with DenotTransformer {
1061
1061
case _ => BoundTree (freshSym(tree.pos, pt, PatMatPName ), tree)
1062
1062
}
1063
1063
1064
- final case class BoundTree (binder : Symbol , tree : Tree ) {
1064
+ /* final*/ case class BoundTree (binder : Symbol , tree : Tree ) {
1065
1065
private lazy val extractor = ExtractorCall (tree, binder)
1066
1066
1067
1067
def pos = tree.pos
@@ -1179,7 +1179,7 @@ class PatternMatcherOld extends MiniPhase with DenotTransformer {
1179
1179
}
1180
1180
1181
1181
// a list of TreeMakers that encode `patTree`, and a list of arguments for recursive invocations of `translatePattern` to encode its subpatterns
1182
- final case class TranslationStep (makers : List [TreeMaker ], subpatterns : List [BoundTree ]) {
1182
+ /* final*/ case class TranslationStep (makers : List [TreeMaker ], subpatterns : List [BoundTree ]) {
1183
1183
def merge (f : BoundTree => List [TreeMaker ]): List [TreeMaker ] = makers ::: (subpatterns flatMap f)
1184
1184
override def toString = if (subpatterns.isEmpty) " " else subpatterns.mkString(" (" , " , " , " )" )
1185
1185
}
@@ -1611,7 +1611,7 @@ class PatternMatcherOld extends MiniPhase with DenotTransformer {
1611
1611
override def toString = " <none>"
1612
1612
}
1613
1613
1614
- final case class Patterns (fixed : List [Pattern ], star : Pattern ) {
1614
+ /* final*/ case class Patterns (fixed : List [Pattern ], star : Pattern ) {
1615
1615
def hasStar = star != NoPattern
1616
1616
def starArity = if (hasStar) 1 else 0
1617
1617
def nonStarArity = fixed.length
@@ -1645,7 +1645,7 @@ class PatternMatcherOld extends MiniPhase with DenotTransformer {
1645
1645
* @param fixed The non-sequence types which are extracted
1646
1646
* @param repeated The sequence type which is extracted
1647
1647
*/
1648
- final case class Extractor (whole : Type , fixed : List [Type ], repeated : Repeated ) {
1648
+ /* final*/ case class Extractor (whole : Type , fixed : List [Type ], repeated : Repeated ) {
1649
1649
require(whole != NoType , s " expandTypes( $whole, $fixed, $repeated) " )
1650
1650
1651
1651
def prodArity = fixed.length
@@ -1666,7 +1666,7 @@ class PatternMatcherOld extends MiniPhase with DenotTransformer {
1666
1666
override def toString = " %s => %s" .format(whole, offeringString)
1667
1667
}
1668
1668
1669
- final case class TypedPat (pat : Pattern , tpe : Type ) {
1669
+ /* final*/ case class TypedPat (pat : Pattern , tpe : Type ) {
1670
1670
override def toString = s " $pat: $tpe"
1671
1671
}
1672
1672
@@ -1677,7 +1677,7 @@ class PatternMatcherOld extends MiniPhase with DenotTransformer {
1677
1677
* sequence which can populate at least <elementArity> patterns.
1678
1678
* < 0: There are more products than patterns: compile time error.
1679
1679
*/
1680
- final case class Aligned (patterns : Patterns , extractor : Extractor ) {
1680
+ /* final*/ case class Aligned (patterns : Patterns , extractor : Extractor ) {
1681
1681
def elementArity = patterns.nonStarArity - prodArity
1682
1682
def prodArity = extractor.prodArity
1683
1683
def starArity = patterns.starArity
0 commit comments