scala.reflect.generic

# HasFlags

#### trait HasFlags extends AnyRef

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

Annotations
  @deprecated
Deprecated

  scala.reflect.generic will be removed

Source
  HasFlags.scala

Linear Supertypes
AnyRef, Any
Known Subclasses
AbsSymbol, Modifiers
Ordering

1. Alphabetic
2. By inheritance

Inherited

1. Hide All
2. Show all

1. HasFlags
2. AnyRef
3. Any

Visibility

1. Public
2. All

### Type Members

1. #### type AccessBoundaryType

   Attributes
     abstract

2. #### type AnnotationType

   Attributes
     abstract

3. #### type FlagsType

   Attributes
     abstract

### Abstract Value Members

1. #### def annotations : List[AnnotationType]

   A list of annotations attached to this entity.

   A list of annotations attached to this entity.

   Attributes
     abstract

2. #### 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 abstract

3. #### def hasAccessBoundary : Boolean

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

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

   Attributes
     abstract

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

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

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

   Attributes
     abstract

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

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

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

   Attributes
     abstract

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

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

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

   Attributes
     abstract

7. #### 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

   Attributes
     abstract

### Concrete Value Members

1. #### def != (arg0: AnyRef): Boolean

   Attributes
     final
   Definition Classes
     AnyRef

2. #### def != (arg0: Any): Boolean

   Test two objects for inequality.

   Test two objects for inequality.

   returns

     `true` if !(this == that), false otherwise.

   Attributes
     final
   Definition Classes
     Any

3. #### def ## (): Int

   Equivalent to `x.hashCode` except for boxed numeric types.

   Equivalent to `x.hashCode` except for boxed numeric types. For numerics, it returns a hash value which is consistent with value equality: if two value type instances compare as true, then ## will produce the same hash value for each of them.

   returns

     a hash value consistent with ==

   Attributes
     final
   Definition Classes
     AnyRef → Any

4. #### def == (arg0: AnyRef): Boolean

   Attributes
     final
   Definition Classes
     AnyRef

5. #### def == (arg0: Any): Boolean

   Test two objects for equality.

   Test two objects for equality.

   returns

     `true` if the receiver object is equivalent to the argument; `false` otherwise.

   Attributes
     final
   Definition Classes
     Any

6. #### def asInstanceOf [T0] : T0

   Cast the receiver object to be of type `T0`.

   Cast the receiver object to be of type `T0`.

   Note that the success of a cast at runtime is modulo Scala's erasure semantics. Therefore the expression `1.asInstanceOf[String]` will throw a `ClassCastException` at runtime, while the expression `List(1).asInstanceOf[List[String]]` will not. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the requested type.

   returns

     the receiver object.

   Attributes
     final
   Definition Classes
     Any

7. #### def clone (): AnyRef

   Create a copy of the receiver object.

   Create a copy of the receiver object.

   The default implementation of the `clone` method is platform dependent.

   returns

     a copy of the receiver object.

   Attributes
     protected[lang]
   Definition Classes
     AnyRef
   Annotations
     @throws()

8. #### def eq (arg0: AnyRef): Boolean

   Tests whether the argument (`arg0`) is a reference to the receiver object (`this`).

   Tests whether the argument (`arg0`) is a reference to the receiver object (`this`).

   The `eq` method implements an equivalence relation on non-null instances of `AnyRef`, and has three additional properties:

   - It is consistent: for any non-null instances `x` and `y` of type `AnyRef`, multiple invocations of `x.eq(y)` consistently returns `true` or consistently returns `false`.
   - For any non-null instance `x` of type `AnyRef`, `x.eq(null)` and `null.eq(x)` returns `false`.
   - `null.eq(null)` returns `true`.

   When overriding the `equals` or `hashCode` methods, it is important to ensure that their behavior is consistent with reference equality. Therefore, if two objects are references to each other (`o1 eq o2`), they should be equal to each other (`o1 == o2`) and they should hash to the same value (`o1.hashCode == o2.hashCode`).

   returns

     `true` if the argument is a reference to the receiver object; `false` otherwise.

   Attributes
     final
   Definition Classes
     AnyRef

9. #### def equals (arg0: Any): Boolean

   The equality method for reference types.

   The equality method for reference types. See equals in Any.

   returns

     `true` if the receiver object is equivalent to the argument; `false` otherwise.

   Definition Classes
     AnyRef → Any

10. #### def finalize (): Unit

    Called by the garbage collector on the receiver object when there are no more references to the object.

    Called by the garbage collector on the receiver object when there are no more references to the object.

    The details of when and if the `finalize` method is invoked, as well as the interaction between `finalize` and non-local returns and exceptions, are all platform dependent.

    Attributes
      protected[lang]
    Definition Classes
      AnyRef
    Annotations
      @throws()

11. #### def getClass (): java.lang.Class[_]

    A representation that corresponds to the dynamic class of the receiver object.

    A representation that corresponds to the dynamic class of the receiver object.

    The nature of the representation is platform dependent.

    returns

      a representation that corresponds to the dynamic class of the receiver object.

    Attributes
      final
    Definition Classes
      AnyRef → Any

12. #### def hasAbstractFlag : Boolean

13. #### def hasAccessorFlag : Boolean

14. #### def hasContravariantFlag : Boolean

15. #### def hasDefault : Boolean

16. #### def hasDefaultFlag : Boolean

17. #### def hasInConstructorFlag : Boolean

18. #### def hasLocalFlag : Boolean

19. #### def hasModuleFlag : Boolean

20. #### def hasNoFlags (mask: Long): Boolean

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

21. #### def hasPackageFlag : Boolean

22. #### def hasPreSuperFlag : Boolean

23. #### def hasStableFlag : Boolean

24. #### def hasStaticFlag : Boolean

25. #### def hasTraitFlag : Boolean

26. #### def hashCode (): Int

    The hashCode method for reference types.

    The hashCode method for reference types. See hashCode in Any.

    returns

      the hash code value for this object.

    Definition Classes
      AnyRef → Any

27. #### def isAbstractOverride : Boolean

28. #### def isByNameParam : Boolean

29. #### def isCase : Boolean

30. #### def isCaseAccessor : Boolean

31. #### def isDefaultInit : Boolean

32. #### def isDeferred : Boolean

33. #### def isFinal : Boolean

34. #### def isImplicit : Boolean

35. #### def isInstanceOf [T0] : Boolean

    Test whether the dynamic type of the receiver object is `T0`.

    Test whether the dynamic type of the receiver object is `T0`.

    Note that the result of the test is modulo Scala's erasure semantics. Therefore the expression `1.isInstanceOf[String]` will return `false`, while the expression `List(1).isInstanceOf[List[String]]` will return `true`. In the latter example, because the type argument is erased as part of compilation it is not possible to check whether the contents of the list are of the specified type.

    returns

      `true` if the receiver object is an instance of erasure of type `T0`; `false` otherwise.

    Attributes
      final
    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. #### def ne (arg0: AnyRef): Boolean

    Equivalent to `!(this eq that)`.

    Equivalent to `!(this eq that)`.

    returns

      `true` if the argument is not a reference to the receiver object; `false` otherwise.

    Attributes
      final
    Definition Classes
      AnyRef

55. #### def notify (): Unit

    Wakes up a single thread that is waiting on the receiver object's monitor.

    Wakes up a single thread that is waiting on the receiver object's monitor.

    Attributes
      final
    Definition Classes
      AnyRef

56. #### def notifyAll (): Unit

    Wakes up all threads that are waiting on the receiver object's monitor.

    Wakes up all threads that are waiting on the receiver object's monitor.

    Attributes
      final
    Definition Classes
      AnyRef

57. #### def synchronized [T0] (arg0: ⇒ T0): T0

    Attributes
      final
    Definition Classes
      AnyRef

58. #### def toString (): String

    Creates a String representation of this object.

    Creates a String representation of this object. The default representation is platform dependent. On the java platform it is the concatenation of the class name, "@", and the object's hashcode in hexadecimal.

    returns

      a String representation of the object.

    Definition Classes
      AnyRef → Any

59. #### def wait (): Unit

    Attributes
      final
    Definition Classes
      AnyRef
    Annotations
      @throws()

60. #### def wait (arg0: Long, arg1: Int): Unit

    Attributes
      final
    Definition Classes
      AnyRef
    Annotations
      @throws()

61. #### def wait (arg0: Long): Unit

    Attributes
      final
    Definition Classes
      AnyRef
    Annotations
      @throws()

### Deprecated Value Members

1. #### def isAbstract : Boolean

   Annotations
     @deprecated
   Deprecated

### Inherited from AnyRef

### Inherited from Any