summaryrefslogtreecommitdiff
path: root/sources/scalac/transformer/matching/PatternNode.java
diff options
context:
space:
mode:
authorMatthias Zenger <mzenger@gmail.com>2003-03-04 10:17:37 +0000
committerMatthias Zenger <mzenger@gmail.com>2003-03-04 10:17:37 +0000
commit9700a2088f806754bd8dd3d72b8d077f7b858079 (patch)
treec5ad8f462cba6f254657db4649764ef01614c4cf /sources/scalac/transformer/matching/PatternNode.java
parent95a5ffa2017e789cdcbbf9b7fe3f94f1b1eb788b (diff)
downloadscala-9700a2088f806754bd8dd3d72b8d077f7b858079.tar.gz
scala-9700a2088f806754bd8dd3d72b8d077f7b858079.tar.bz2
scala-9700a2088f806754bd8dd3d72b8d077f7b858079.zip
* implemented new sequence patterns
* optimized code generation routines
Diffstat (limited to 'sources/scalac/transformer/matching/PatternNode.java')
-rw-r--r--sources/scalac/transformer/matching/PatternNode.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/sources/scalac/transformer/matching/PatternNode.java b/sources/scalac/transformer/matching/PatternNode.java
index 24404d0242..506fad2708 100644
--- a/sources/scalac/transformer/matching/PatternNode.java
+++ b/sources/scalac/transformer/matching/PatternNode.java
@@ -24,6 +24,7 @@ public class PatternNode {
public case Body(Tree.ValDef[][] bound, Tree[] guard, Tree[] body);
public case DefaultPat();
public case ConstrPat(Symbol casted);
+ public case SequencePat(Symbol casted, int len);
public case ConstantPat(Object value);
public case VariablePat(Tree tree);
@@ -32,6 +33,8 @@ public class PatternNode {
switch (this) {
case ConstrPat(Symbol casted):
return casted;
+ case SequencePat(Symbol casted, _):
+ return casted;
default:
return Symbol.NONE;
}
@@ -47,6 +50,8 @@ public class PatternNode {
return "DefaultPat";
case ConstrPat(Symbol casted):
return "ConstrPat(" + casted + ")";
+ case SequencePat(Symbol casted, int len):
+ return "SequencePat(" + casted + ", " + len + ")";
case ConstantPat(Object value):
return "ConstantPat(" + value + ")";
case VariablePat(Tree tree):