summaryrefslogtreecommitdiff
path: root/sources/scalac/ast
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2003-10-13 15:43:36 +0000
committerpaltherr <paltherr@epfl.ch>2003-10-13 15:43:36 +0000
commit774bd9179ecc515902db63ef2ba7271e6d6d4a6e (patch)
tree8bcd236b0d46b796c821ac67337530947266d2a0 /sources/scalac/ast
parenta87e39db1f901094e959fd2121b5d7afe98a9c6c (diff)
downloadscala-774bd9179ecc515902db63ef2ba7271e6d6d4a6e.tar.gz
scala-774bd9179ecc515902db63ef2ba7271e6d6d4a6e.tar.bz2
scala-774bd9179ecc515902db63ef2ba7271e6d6d4a6e.zip
- Addded Definitions.PATTERN_WILDCARD
- Removed Names.WILDCARD - Added Names.PATTERN_WILDCARD - Added Names.IMPORT_WILDCARD - Replaced most uses of Names.PATTERN_WILDCARD by Definitions.PATTERN_WILDCARD - Removed TreeInfo.isWildcardPattern
Diffstat (limited to 'sources/scalac/ast')
-rw-r--r--sources/scalac/ast/TreeInfo.java11
-rw-r--r--sources/scalac/ast/parser/Parser.java19
-rw-r--r--sources/scalac/ast/parser/PatternNormalizer.java2
3 files changed, 11 insertions, 21 deletions
diff --git a/sources/scalac/ast/TreeInfo.java b/sources/scalac/ast/TreeInfo.java
index d0a8b41311..d7efc130cc 100644
--- a/sources/scalac/ast/TreeInfo.java
+++ b/sources/scalac/ast/TreeInfo.java
@@ -239,15 +239,4 @@ public class TreeInfo {
return false;
}
}
-
- /** returns true if the argument is a wildcard pattern
- */
- public static boolean isWildcardPattern( Tree tree ) {
- switch( tree ) {
- case Ident( Name n ):
- return ( n == Names.WILDCARD ) && ( tree.symbol() == null );
- default:
- return false;
- }
- }
}
diff --git a/sources/scalac/ast/parser/Parser.java b/sources/scalac/ast/parser/Parser.java
index 03231b150f..a25b219d3b 100644
--- a/sources/scalac/ast/parser/Parser.java
+++ b/sources/scalac/ast/parser/Parser.java
@@ -1136,7 +1136,7 @@ public class Parser implements Tokens {
rhs.pos, pat.duplicate(), Tree.Empty,
make.Literal(s.pos, Boolean.TRUE)),
(CaseDef)make.CaseDef(
- rhs.pos, make.Ident(rhs.pos, Names.WILDCARD), Tree.Empty,
+ rhs.pos, make.Ident(rhs.pos, Names.PATTERN_WILDCARD), Tree.Empty,
make.Literal(s.pos, Boolean.FALSE))})});
return make.PatDef(pos, 0, pat, rhs);
}
@@ -1222,10 +1222,11 @@ public class Parser implements Tokens {
Tree pattern2() {
Tree p = pattern3();
if (s.token == AT && TreeInfo.isVarPattern(p)) {
- if( !TreeInfo.isWildcardPattern(p) )
- return make.Bind(s.skipToken(), ((Ident)p).name, pattern3());
- else
- return pattern3();
+ switch (p) {
+ case Ident(Name name):
+ if (name == Names.PATTERN_WILDCARD) return pattern3();
+ }
+ return make.Bind(s.skipToken(), ((Ident)p).name, pattern3());
}
return p;
}
@@ -1316,7 +1317,7 @@ public class Parser implements Tokens {
}
return t;
case USCORE:
- return make.Ident(s.skipToken(), Names.WILDCARD);
+ return make.Ident(s.skipToken(), Names.PATTERN_WILDCARD);
case CHARLIT:
case INTLIT:
case LONGLIT:
@@ -1571,7 +1572,7 @@ public class Parser implements Tokens {
while (true) {
if (s.token == USCORE) {
s.nextToken();
- return make.Import(startpos, t, new Name[]{Names.WILDCARD});
+ return make.Import(startpos, t, new Name[]{Names.IMPORT_WILDCARD});
} else if (s.token == LBRACE) {
return make.Import(startpos, t, importSelectors());
} else {
@@ -1610,7 +1611,7 @@ public class Parser implements Tokens {
boolean importSelector(LinkedList/*<Name>*/ names) {
if (s.token == USCORE) {
s.nextToken();
- names.add(Names.WILDCARD);
+ names.add(Names.IMPORT_WILDCARD);
return true;
} else {
Name name = ident();
@@ -1619,7 +1620,7 @@ public class Parser implements Tokens {
s.nextToken();
if (s.token == USCORE) {
s.nextToken();
- names.add(Names.WILDCARD);
+ names.add(Names.IMPORT_WILDCARD);
} else {
names.add(ident());
}
diff --git a/sources/scalac/ast/parser/PatternNormalizer.java b/sources/scalac/ast/parser/PatternNormalizer.java
index 1a358f859f..b76fd11a3b 100644
--- a/sources/scalac/ast/parser/PatternNormalizer.java
+++ b/sources/scalac/ast/parser/PatternNormalizer.java
@@ -88,7 +88,7 @@ public class PatternNormalizer {
case Ident( Name var ):
if(( inAlt )
- &&( var != Names.WILDCARD )
+ &&( var != Names.PATTERN_WILDCARD )
&&( var.toString().lastIndexOf("$") == -1))
{
unit.error( t.pos,