diff options
Diffstat (limited to 'src/compiler/scala/tools/nsc/symtab/Flags.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/symtab/Flags.scala | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/symtab/Flags.scala b/src/compiler/scala/tools/nsc/symtab/Flags.scala index 3e8e7792ae..89d5060a88 100644 --- a/src/compiler/scala/tools/nsc/symtab/Flags.scala +++ b/src/compiler/scala/tools/nsc/symtab/Flags.scala @@ -6,7 +6,8 @@ package scala.tools.nsc.symtab -object Flags { +object Flags extends Enumeration { + // modifiers final val IMPLICIT = 0x00000001 final val FINAL = 0x00000002 @@ -209,4 +210,36 @@ object Flags { def isVariable = (mods & MUTABLE) != 0 def isPublic = !isPrivate && !isProtected } + case class FlagEnum(mask : Int) extends Val(maskToBit(mask), flagToString(mask)); + + val Implicit = FlagEnum(IMPLICIT) + val Final = FlagEnum(FINAL) + val Private = FlagEnum(PRIVATE) + val Protected= FlagEnum(PROTECTED) + val Sealed = FlagEnum(SEALED) + val Override = FlagEnum(OVERRIDE) + val Case = FlagEnum(CASE) + val Abstract = FlagEnum(ABSTRACT) + val Deferred = FlagEnum(DEFERRED) + val Method = FlagEnum(METHOD) + val Module = FlagEnum(MODULE) + val Interface= FlagEnum(INTERFACE) + val Mutable = FlagEnum(MUTABLE) + val Param = FlagEnum(PARAM) + val Package = FlagEnum(PACKAGE) + val Deprecated=FlagEnum(DEPRECATED) + val Covariant=FlagEnum(COVARIANT) + val Contravariant=FlagEnum(CONTRAVARIANT) + val AbsOverride=FlagEnum(ABSOVERRIDE) + val Local=FlagEnum(LOCAL) + val Synthetic=FlagEnum(SYNTHETIC) + val Stable=FlagEnum(STABLE) + val CaseAccessor=FlagEnum(CASEACCESSOR) + val Trait=FlagEnum(TRAIT) + val Bridge=FlagEnum(BRIDGE) + val Accessor=FlagEnum(ACCESSOR) + val SuperAccessor=FlagEnum(SUPERACCESSOR) + val ParamAccessor=FlagEnum(PARAMACCESSOR) + val ModuleVar=FlagEnum(MODULEVAR) + } |