diff options
author | buraq <buraq@epfl.ch> | 2003-07-08 10:01:39 +0000 |
---|---|---|
committer | buraq <buraq@epfl.ch> | 2003-07-08 10:01:39 +0000 |
commit | d58dc0f1868b479b415c29ea264f106dc9699c21 (patch) | |
tree | 95c4c717c5f40e113caaecd24a609d24981fe39e /sources/scalac/transformer/matching/PatternNode.java | |
parent | b7f7cddf7cb4ce9df8e6fff89b2f59f989d72100 (diff) | |
download | scala-d58dc0f1868b479b415c29ea264f106dc9699c21.tar.gz scala-d58dc0f1868b479b415c29ea264f106dc9699c21.tar.bz2 scala-d58dc0f1868b479b415c29ea264f106dc9699c21.zip |
matching
Diffstat (limited to 'sources/scalac/transformer/matching/PatternNode.java')
-rw-r--r-- | sources/scalac/transformer/matching/PatternNode.java | 33 |
1 files changed, 19 insertions, 14 deletions
diff --git a/sources/scalac/transformer/matching/PatternNode.java b/sources/scalac/transformer/matching/PatternNode.java index 6feb28dd21..d089c6f432 100644 --- a/sources/scalac/transformer/matching/PatternNode.java +++ b/sources/scalac/transformer/matching/PatternNode.java @@ -23,20 +23,23 @@ public class PatternNode { public PatternNode or; public PatternNode and; - public case Header(Tree selector, Header next); - public case Body(Tree.ValDef[][] bound, Tree[] guard, Tree[] body); + public case Header( Tree selector, Header next ); + 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, Tree seqpat); - public case ConstantPat(Object value); - public case VariablePat(Tree tree); + public case ConstrPat( Symbol casted ); + public case SequencePat( Symbol casted, int len ); // only used in PatternMatcher + public case SeqContainerPat( Symbol casted, Tree seqpat ); // in AlgebraicMatcher + public case ConstantPat( Object value ); + public case VariablePat( Tree tree ); public Symbol symbol() { switch (this) { - case ConstrPat(Symbol casted): + case ConstrPat( Symbol casted ): return casted; - case SequencePat(Symbol casted, _, _): + case SequencePat( Symbol casted, _ ): + return casted; + case SeqContainerPat( Symbol casted, _ ): return casted; default: return Symbol.NONE; @@ -45,19 +48,21 @@ public class PatternNode { public String toString() { switch (this) { - case Header(Tree selector, Header next): + case Header( Tree selector, Header next ): return "Header(" + selector + ")"; - case Body(_, _, _): + case Body( _, _, _ ): return "Body"; case DefaultPat(): return "DefaultPat"; - case ConstrPat(Symbol casted): + case ConstrPat( Symbol casted ): return "ConstrPat(" + casted + ")"; - case SequencePat(Symbol casted, int len, Tree seqpat): + case SequencePat( Symbol casted, int len ): return "SequencePat(" + casted + ", " + len + "...)"; - case ConstantPat(Object value): + case SeqContainerPat( Symbol casted, Tree seqpat ): + return "SeqContainerPat(" + casted + ", " + seqpat + ")"; + case ConstantPat( Object value ): return "ConstantPat(" + value + ")"; - case VariablePat(Tree tree): + case VariablePat( Tree tree ): return "VariablePat"; default: return "<unknown pat>"; |