Packages

sealed trait TypeImmutability extends OrderedProperty with TypeImmutabilityPropertyMetaInformation

Specifies if all instances of a respective type (this includes the instances of the type's subtypes) are (conditionally) immutable. Conditionally immutable means that only the instance of the type itself is guaranteed to be immutable, but not all reachable objects. In general, all -- so called -- immutable collections are only conditionally immutable. I.e., the collection as a whole is only immutable if only immutable objects are stored in the collection. If this is not the case, the collection is only conditionally immutable.

This property is of particular interest if the precise type cannot be computed statically. This property basically depends on the org.opalj.br.analyses.cg.TypeExtensibilityKey and ClassImmutability.

Linear Supertypes
TypeImmutabilityPropertyMetaInformation, OrderedProperty, Property, PropertyMetaInformation, PropertyKind, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TypeImmutability
  2. TypeImmutabilityPropertyMetaInformation
  3. OrderedProperty
  4. Property
  5. PropertyMetaInformation
  6. PropertyKind
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final type Self = TypeImmutability
    Definition Classes
    TypeImmutabilityPropertyMetaInformation → PropertyMetaInformation

Abstract Value Members

  1. abstract def checkIsEqualOrBetterThan(e: Entity, other: Self): Unit
    Definition Classes
    OrderedProperty
    Annotations
    @throws( ... )
  2. abstract def isImmutable: Boolean
  3. abstract def isImmutableContainer: Boolean
  4. abstract def isMutable: Boolean

    true if the mutability is unknown or if the type is mutable.

  5. abstract def meet(other: TypeImmutability): TypeImmutability

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. final def asOrderedProperty: OrderedProperty
    Definition Classes
    Property
  6. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. final def id: Int
    Definition Classes
    PropertyMetaInformation → PropertyKind
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. final def isOrderedProperty: Boolean
    Definition Classes
    Property
  15. final def key: PropertyKey[TypeImmutability]

    Returns the key used by all TypeImmutability properties.

    Returns the key used by all TypeImmutability properties.

    Definition Classes
    TypeImmutability → PropertyMetaInformation
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  20. def toString(): String
    Definition Classes
    AnyRef → Any
  21. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from OrderedProperty

Inherited from Property

Inherited from PropertyMetaInformation

Inherited from PropertyKind

Inherited from AnyRef

Inherited from Any

Ungrouped