summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/internal/Symbols.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2012-07-08 11:30:46 +0200
committerAdriaan Moors <adriaan.moors@epfl.ch>2012-07-11 17:40:34 +0200
commit39fc4aa845dab660d9d360f9b6e9fd82f5d765fe (patch)
tree792a4c8b8bfc0948493171a43ff6075c56bdbdc1 /src/reflect/scala/reflect/internal/Symbols.scala
parent2d35dfcffdf227466b22e3920943a3acc6240e7f (diff)
downloadscala-39fc4aa845dab660d9d360f9b6e9fd82f5d765fe.tar.gz
scala-39fc4aa845dab660d9d360f9b6e9fd82f5d765fe.tar.bz2
scala-39fc4aa845dab660d9d360f9b6e9fd82f5d765fe.zip
polymorphic value classes
dropping boxing code, which turned out to be a dead end.
Diffstat (limited to 'src/reflect/scala/reflect/internal/Symbols.scala')
-rw-r--r--src/reflect/scala/reflect/internal/Symbols.scala10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/reflect/scala/reflect/internal/Symbols.scala b/src/reflect/scala/reflect/internal/Symbols.scala
index 77c27126c5..94be7848bf 100644
--- a/src/reflect/scala/reflect/internal/Symbols.scala
+++ b/src/reflect/scala/reflect/internal/Symbols.scala
@@ -2239,10 +2239,10 @@ trait Symbols extends api.Symbols { self: SymbolTable =>
base.info.decl(sname) filter (_.hasAccessorFlag)
}
- /** Return the accessor method of the first parameter of this class.
+ /** If this is a derived value class, return its unbox method
* or NoSymbol if it does not exist.
*/
- def firstParamAccessor: Symbol = NoSymbol
+ def derivedValueClassUnbox: Symbol = NoSymbol
/** The case module corresponding to this case class
* @pre case class is a member of some other class or package
@@ -3146,8 +3146,10 @@ trait Symbols extends api.Symbols { self: SymbolTable =>
clone
}
- override def firstParamAccessor =
- info.decls.find(_ hasAllFlags PARAMACCESSOR | METHOD) getOrElse NoSymbol
+ override def derivedValueClassUnbox =
+ (info.decl(nme.unbox)) orElse
+ (info.decls.find(_ hasAllFlags PARAMACCESSOR | METHOD) getOrElse
+ NoSymbol)
private[this] var childSet: Set[Symbol] = Set()
override def children = childSet