diff options
author | Martin Odersky <odersky@gmail.com> | 2013-11-25 11:31:46 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2013-11-25 11:34:04 +0100 |
commit | 45ea511ec8ef12e0a192e4f4925923e75ef9ae3a (patch) | |
tree | f498f664b8a2b7133c86bc37c481aafccfef99b3 /src/dotty/tools/dotc/core/TypeOps.scala | |
parent | 92ed954f361ed08ef4821afd530357379956904a (diff) | |
download | dotty-45ea511ec8ef12e0a192e4f4925923e75ef9ae3a.tar.gz dotty-45ea511ec8ef12e0a192e4f4925923e75ef9ae3a.tar.bz2 dotty-45ea511ec8ef12e0a192e4f4925923e75ef9ae3a.zip |
Types refactorings
- moving out type applicaton related operations to a decorator: TypeApplications
- converting some set operations to list operations to make them replayable.
- moving unused operations to Types.overflow
Diffstat (limited to 'src/dotty/tools/dotc/core/TypeOps.scala')
-rw-r--r-- | src/dotty/tools/dotc/core/TypeOps.scala | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/dotty/tools/dotc/core/TypeOps.scala b/src/dotty/tools/dotc/core/TypeOps.scala index cdc695ebd..c7b75e0b8 100644 --- a/src/dotty/tools/dotc/core/TypeOps.scala +++ b/src/dotty/tools/dotc/core/TypeOps.scala @@ -74,10 +74,14 @@ trait TypeOps { this: Context => val absParents = parents filter (_.symbol is Deferred) absParents.size >= 2 || { val ap = absParents.head - (parents exists (p => - (p ne ap) || p.abstractMemberNames(tp).nonEmpty)) || - (refinedNames & tp.abstractMemberNames()).nonEmpty || - isVolatile(ap) + ((parents exists (p => + (p ne ap) + || p.memberNames(abstractTypeNameFilter, tp).nonEmpty + || p.memberNames(abstractTermNameFilter, tp).nonEmpty)) + || (refinedNames & tp.memberNames(abstractTypeNameFilter, tp)).nonEmpty + || (refinedNames & tp.memberNames(abstractTermNameFilter, tp)).nonEmpty + || isVolatile(ap) + ) } } } |