treehugger

HasFlags

Related Doc: package treehugger

trait HasFlags extends AnyRef

Common code utilized by Modifiers (which carry the flags associated with Trees) and Symbol.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. HasFlags
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. abstract type AccessBoundaryType

  2. abstract type AnnotationType

  3. abstract type FlagsType

Abstract Value Members

  1. abstract def annotations: List[AnnotationType]

    A list of annotations attached to this entity.

  2. abstract def flags: FlagsType

    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.

    Attributes
    protected
  3. abstract def hasAccessBoundary: Boolean

    Whether this entity has a "privateWithin" visibility barrier attached.

  4. abstract def hasAllFlags(mask: Long): Boolean

    Whether this entity has ALL of the flags in the given mask.

  5. abstract def hasFlag(flag: Long): Boolean

    Whether this entity has ANY of the flags in the given mask.

  6. abstract def hasFlagsToString(mask: FlagsType): String

    The printable representation of this entity's flags and access boundary, restricted to flags in the given mask.

  7. abstract def privateWithin: AccessBoundaryType

    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

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  5. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  10. def hasAbstractFlag: Boolean

  11. def hasAccessorFlag: Boolean

  12. def hasContravariantFlag: Boolean

  13. def hasDefault: Boolean

  14. def hasDefaultFlag: Boolean

  15. def hasInConstructorFlag: Boolean

  16. def hasLocalFlag: Boolean

  17. def hasModuleFlag: Boolean

  18. def hasNoFlags(mask: Long): Boolean

    Whether this entity has NONE of the flags in the given mask.

  19. def hasPackageFlag: Boolean

  20. def hasPreSuperFlag: Boolean

  21. def hasStableFlag: Boolean

  22. def hasStaticFlag: Boolean

  23. def hasTraitFlag: Boolean

  24. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  25. def isAbstractOverride: Boolean

  26. def isAnyOverride: Boolean

  27. def isByNameParam: Boolean

  28. def isCase: Boolean

  29. def isCaseAccessor: Boolean

  30. def isDefaultInit: Boolean

  31. def isDeferred: Boolean

  32. def isFinal: Boolean

  33. def isHeader: Boolean

  34. def isImplicit: Boolean

  35. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  36. def isInterface: Boolean

  37. def isJavaDefined: Boolean

  38. def isLabel: Boolean

  39. def isLazy: Boolean

  40. def isLifted: Boolean

  41. def isMutable: Boolean

  42. def isOverride: Boolean

  43. def isParamAccessor: Boolean

  44. def isParameter: Boolean

  45. def isPrivate: Boolean

  46. def isPrivateLocal: Boolean

  47. def isProtected: Boolean

  48. def isProtectedLocal: Boolean

  49. def isPublic: Boolean

  50. def isSealed: Boolean

  51. def isSuperAccessor: Boolean

  52. def isSynthetic: Boolean

  53. def isTrait: Boolean

  54. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  55. final def notify(): Unit

    Definition Classes
    AnyRef
  56. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  57. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  58. def toString(): String

    Definition Classes
    AnyRef → Any
  59. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  60. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  61. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped