aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/Flags.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2012-12-18 15:11:25 +0100
committerMartin Odersky <odersky@gmail.com>2012-12-18 15:12:20 +0100
commit789d15e6d5d98880dd64c8b55b9c2456f020b46b (patch)
treeeb5dff77ffca9a1267161c2ece36c0fab45de453 /src/dotty/tools/dotc/core/Flags.scala
parent4481a057fb5906c002788642aaad34a6cf1124ef (diff)
downloaddotty-789d15e6d5d98880dd64c8b55b9c2456f020b46b.tar.gz
dotty-789d15e6d5d98880dd64c8b55b9c2456f020b46b.tar.bz2
dotty-789d15e6d5d98880dd64c8b55b9c2456f020b46b.zip
(1) Moved logic from ClassDenotation to ClassInfoType. (2) Tweaks to other types. (3) FlagSet is now a value class.
Diffstat (limited to 'src/dotty/tools/dotc/core/Flags.scala')
-rw-r--r--src/dotty/tools/dotc/core/Flags.scala14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/dotty/tools/dotc/core/Flags.scala b/src/dotty/tools/dotc/core/Flags.scala
index 3b8f05eab..fc9a1b4d3 100644
--- a/src/dotty/tools/dotc/core/Flags.scala
+++ b/src/dotty/tools/dotc/core/Flags.scala
@@ -2,12 +2,16 @@ package dotty.tools.dotc.core
object Flags {
- type FlagSet = Long
+ case class FlagSet(val bits: Long) extends AnyVal {
+ def | (that: FlagSet) = FlagSet(this.bits | that.bits)
+ def & (that: FlagSet) = FlagSet(this.bits & that.bits)
+ }
- final val Empty = 0
+ final val Empty = FlagSet(0)
- final val Error = 1 << 32
- final val Frozen: Int = ???
- final val Private: Int = ???
+ final val Error = FlagSet(1 << 32)
+ final val Frozen = FlagSet(???)
+ final val Private = FlagSet(???)
+ final val Package = FlagSet(???)
} \ No newline at end of file