A list of annotations attached to this entity.
Though both Symbol and Modifiers widen this method to public, it's defined protected here to give us the option in the future to route flag methods through accessors and disallow raw flag manipulation.
Though both Symbol and Modifiers widen this method to public, it's defined protected here to give us the option in the future to route flag methods through accessors and disallow raw flag manipulation. And after that, perhaps, on some magical day: a typesafe enumeration.
Whether this entity has a "privateWithin" visibility barrier attached.
Whether this entity has ALL of the flags in the given mask.
Whether this entity has ANY of the flags in the given mask.
Access level encoding: there are three scala flags (PRIVATE, PROTECTED, and LOCAL) which combine with value privateWithin (the "foo" in private[foo]) to define from where an entity can be accessed.
Access level encoding: there are three scala flags (PRIVATE, PROTECTED, and LOCAL) which combine with value privateWithin (the "foo" in private[foo]) to define from where an entity can be accessed. The meanings are as follows:
PRIVATE access restricted to class only. PROTECTED access restricted to class and subclasses only. LOCAL can only be set in conjunction with PRIVATE or PROTECTED. Further restricts access to the same object instance.
In addition, privateWithin can be used to set a visibility barrier. When set, everything contained in the named enclosing package or class has access. It is incompatible with PRIVATE or LOCAL, but is additive with PROTECTED (i.e. if either the flags or privateWithin allow access, then it is allowed.)
The java access levels translate as follows:
java private: hasFlag(PRIVATE) && !hasAccessBoundary java package: !hasFlag(PRIVATE | PROTECTED) && (privateWithin == enclosing package) java protected: hasFlag(PROTECTED) && (privateWithin == enclosing package) java public: !hasFlag(PRIVATE | PROTECTED) && !hasAccessBoundary
The default mask determining which flags to display.
The printable representation of this entity's flags and access boundary, restricted to flags in the given mask.
Whether this entity has NONE of the flags in the given mask.
The string representation of a single bit, seen from this flag carrying entity.
(Since version 2.10.0) Use flagString
(Since version 2.10.0) Use hasDefault
(Since version 2.10.0) Use flagString(mask)
(Since version 2.10.0) Use isTrait
(Since version 2.9.0)
(Since version 2.10.0) Use isValueParameter or isTypeParameter
Common code utilized by Modifiers (which carry the flags associated with Trees) and Symbol.