sealed trait SelfReferenceLeakage extends Property
Determines if an object potentially leaks its self reference (this) by passing
assigning it to fields or passing it to methods which assign it to fields.
Hence, it computes a special escape information.
Here, the self-reference escapes the scope of a class if:
- ... it is assigned to a (static) field,
- ... it is passed to a method that assigns it to a field,
- ... it is stored in an array,
- ... it is returned (recall that constructors have a void return type),
- ... if a superclass leaks the self reference.
This property can be used as a foundation for an analysis that determines whether all instances created for a specific class never escape their creating methods and, hence, respective types cannot occur outside the respective contexts.
Linear Supertypes
Known Subclasses
Ordering
- Alphabetic
- By Inheritance
Inherited
- SelfReferenceLeakage
- Property
- PropertyMetaInformation
- PropertyKind
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Type Members
-
final
type
Self = SelfReferenceLeakage
- Definition Classes
- SelfReferenceLeakage → PropertyMetaInformation
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
final
def
asOrderedProperty: OrderedProperty
- Definition Classes
- Property
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
id: Int
- Definition Classes
- PropertyMetaInformation → PropertyKind
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
isOrderedProperty: Boolean
- Definition Classes
- Property
-
final
def
key: PropertyKey[SelfReferenceLeakage]
- Definition Classes
- SelfReferenceLeakage → PropertyMetaInformation
-
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
- @native() @throws( ... )