diff options
author | Eugene Burmako <xeno.by@gmail.com> | 2012-09-19 12:05:19 +0200 |
---|---|---|
committer | Eugene Burmako <xeno.by@gmail.com> | 2012-09-19 17:14:42 +0200 |
commit | 50b5bdefec899bf441742a40f525234eac65cbaa (patch) | |
tree | 0fac51fe7d1a99cc12cdb718e30240b32e72bbbc /src/library | |
parent | 3c542251e04cd85903ec12f5747c86d5c6c1a867 (diff) | |
download | scala-50b5bdefec899bf441742a40f525234eac65cbaa.tar.gz scala-50b5bdefec899bf441742a40f525234eac65cbaa.tar.bz2 scala-50b5bdefec899bf441742a40f525234eac65cbaa.zip |
fixes NameTypes in base names
NameType is introduced in base.StandardNames#NamesBase to abstract away the
difference between term names and type names in order to encode common names
such as EMPTY or WILDCARD.
Flavor-specific name repositories, such as TermNames and TypeNames are supposed
to override NameType fixing it to correspondingly TermName or TypeName.
Unfortunately I completely overlooked this and as a result some standard names
were typed with insufficient precision, e.g. This(tpnme.EMPTY) didn't work.
Diffstat (limited to 'src/library')
-rw-r--r-- | src/library/scala/reflect/base/Base.scala | 2 | ||||
-rw-r--r-- | src/library/scala/reflect/base/StandardNames.scala | 6 |
2 files changed, 4 insertions, 4 deletions
diff --git a/src/library/scala/reflect/base/Base.scala b/src/library/scala/reflect/base/Base.scala index 7cbc39a3b6..5136f41df4 100644 --- a/src/library/scala/reflect/base/Base.scala +++ b/src/library/scala/reflect/base/Base.scala @@ -212,7 +212,6 @@ class Base extends Universe { self => def newTypeName(str: String) = new TypeName(str) object nme extends TermNamesBase { - type NameType = TermName val WILDCARD = newTermName("_") val CONSTRUCTOR = newTermName("<init>") val ROOTPKG = newTermName("_root_") @@ -223,7 +222,6 @@ class Base extends Universe { self => } object tpnme extends TypeNamesBase { - type NameType = TypeName val WILDCARD = nme.WILDCARD.toTypeName val EMPTY = nme.EMPTY.toTypeName val WILDCARD_STAR = newTypeName("_*") diff --git a/src/library/scala/reflect/base/StandardNames.scala b/src/library/scala/reflect/base/StandardNames.scala index 0b4ec3728a..fc1d247512 100644 --- a/src/library/scala/reflect/base/StandardNames.scala +++ b/src/library/scala/reflect/base/StandardNames.scala @@ -27,11 +27,13 @@ trait StandardNames { } trait TermNamesBase extends NamesBase { - val CONSTRUCTOR: TermName - val ROOTPKG: TermName + type NameType = TermName + val CONSTRUCTOR: NameType + val ROOTPKG: NameType } trait TypeNamesBase extends NamesBase { + type NameType = TypeName val EMPTY: NameType val WILDCARD_STAR: NameType } |