Trait scala.reflect.api.FlagSets
trait FlagSets extends AnyRef
Type Members
trait FlagOps extends Any
The API of FlagSet
instances. The main source of information about flag sets is the scala.reflect.api.FlagSets page.
abstract type FlagSet
trait FlagValues extends AnyRef
All possible values that can constitute flag sets. The main source of information about flag sets is the scala.reflect.api.FlagSets page.
Abstract Value Members
abstract val Flag: Universe.FlagValues
abstract val NoFlags: Universe.FlagSet
implicit abstract def addFlagOps(left: Universe.FlagSet): Universe.FlagOps
Concrete Value Members
final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
final def ##(): Int
- Definition Classes
- AnyRef → Any
def +(other: String): String
def ->[B](y: B): (FlagSets, B)
final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
final def asInstanceOf[T0]: T0
- Definition Classes
- Any
def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
def ensuring(cond: (FlagSets) ⇒ Boolean, msg: ⇒ Any): FlagSets
def ensuring(cond: (FlagSets) ⇒ Boolean): FlagSets
def ensuring(cond: Boolean, msg: ⇒ Any): FlagSets
def ensuring(cond: Boolean): FlagSets
final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
def equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
def formatted(fmtstr: String): String
final def getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
final def synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
def toString(): String
- Definition Classes
- AnyRef → Any
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
def →[B](y: B): (FlagSets, B)
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala-reflect/scala/reflect/api/FlagSets.html
EXPERIMENTAL
The trait that defines flag sets and operations on them.
Flag
s are used to provide modifiers for abstract syntax trees that represent definitions via theflags
field of scala.reflect.api.Trees#Modifiers. Trees that accept modifiers are:For example, to create a class named
C
one would write something like:Here, the flag set is empty.
To make
C
private, one would write something like:Flags can also be combined with the vertical bar operator (
|
). For example, a private final class is written something like:The list of all available flags is defined in scala.reflect.api.FlagSets#FlagValues, available via scala.reflect.api.FlagSets#Flag. (Typically one writes a wildcard import for this, e.g.
import scala.reflect.runtime.universe.Flag._
).Definition trees are compiled down to symbols, so flags on modifiers of these trees are transformed into flags on the resulting symbols. Unlike trees, symbols don't expose flags, but rather provide
isXXX
test methods (e.g.isFinal
can be used to test finality). These test methods might require an upcast withasTerm
,asType
orasClass
as some flags only make sense for certain kinds of symbols.Of Note: This part of the Reflection API is being considered as a candidate for redesign. It is quite possible that in future releases of the reflection API, flag sets could be replaced with something else.
For more details about
FlagSet
s and other aspects of Scala reflection, see the Reflection Guide