aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/Flags.scala
diff options
context:
space:
mode:
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