diff options
author | Matthias Zenger <mzenger@gmail.com> | 2003-03-04 10:17:37 +0000 |
---|---|---|
committer | Matthias Zenger <mzenger@gmail.com> | 2003-03-04 10:17:37 +0000 |
commit | 9700a2088f806754bd8dd3d72b8d077f7b858079 (patch) | |
tree | c5ad8f462cba6f254657db4649764ef01614c4cf /sources/scalac/transformer/matching/PatternNode.java | |
parent | 95a5ffa2017e789cdcbbf9b7fe3f94f1b1eb788b (diff) | |
download | scala-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.java | 5 |
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): |