case object EscapeViaHeapObject extends EscapeProperty with GlobalEscape with Product with Serializable
The object is assigned to a (global) heap object.
- Source
- EscapeProperty.scala
Given the following code:
public class X{ public static X o = new X(); public Object f; public void m() { Object o = new Object(); // ALLOCATION SITE X x = X.o; x.f = o; return; } }
- See also
GlobalEscape for further details.
- Alphabetic
- By Inheritance
- EscapeViaHeapObject
- Serializable
- Product
- Equals
- GlobalEscape
- EscapeProperty
- EscapePropertyMetaInformation
- ExplicitlyNamedProperty
- OrderedProperty
- Property
- PropertyMetaInformation
- PropertyKind
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- final type Self = EscapeProperty
- Definition Classes
- EscapePropertyMetaInformation → 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 val PID: Int(10)
- def asAggregatedProperty: VirtualMethodEscapeProperty
- Definition Classes
- EscapeProperty
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def asOrderedProperty: OrderedProperty
Returns
this
if this property inherits from OrderedProperty.Returns
this
if this property inherits from OrderedProperty.Used, e.g., by the framework to support debugging analyses.
- Definition Classes
- Property
- def bottomness: Int
Returns a value between zero and 9 which describes how close the value is to its absolute bottom.
Returns a value between zero and 9 which describes how close the value is to its absolute bottom. Zero means the value is very close to the bottom and 9 means the value is far away from the bottom.
The default value is "5".
- Definition Classes
- OrderedProperty
- def checkIsEqualOrBetterThan(e: Entity, other: Self): Unit
Tests if this property is equal or better than the given one (better means that the value is above the given value in the underlying lattice.)
Tests if this property is equal or better than the given one (better means that the value is above the given value in the underlying lattice.)
- Definition Classes
- EscapeProperty → OrderedProperty
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def id: Int
The id uniquely identifies this property's category.
The id uniquely identifies this property's category. All property objects of the same kind have to use the same id which is guaranteed since they share the same
PropertyKey
- Definition Classes
- PropertyMetaInformation → PropertyKind
- def isBottom: Boolean
Is this the bottom value of the lattice, i.e.
Is this the bottom value of the lattice, i.e. GlobalEscape, EscapeViaHeapObject or EscapeViaStaticField.
- Definition Classes
- GlobalEscape → EscapeProperty
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def isOrderedProperty: Boolean
Returns
true
if this property inherits from OrderedProperty.Returns
true
if this property inherits from OrderedProperty.- Definition Classes
- Property
- def isTop: Boolean
Is this the top value of the lattice, i.e.
Is this the top value of the lattice, i.e. NoEscape.
- Definition Classes
- GlobalEscape → EscapeProperty
- final def key: PropertyKey[EscapeProperty]
The key uniquely identifies this property's category.
The key uniquely identifies this property's category. All property objects of the same kind have to use the same key.
In general each
Property
kind is expected to have a companion object that stores the uniquePropertyKey
.- Definition Classes
- EscapeProperty → PropertyMetaInformation
- def lessOrEqualRestrictive(that: EscapeProperty): Boolean
Tests if this property describes equal or less restricted escapes than the given property.
.That is if the lifetime OR access bound of the property is greater or equal than
thatTests if this property describes equal or less restricted escapes than the given property.
. E.g., returnsThat is if the lifetime OR access bound of the property is greater or equal than
thattrue
if this property identifies values which GlobalEscape and the given property (that
) refers to values that NoEscape.- Definition Classes
- GlobalEscape → EscapeProperty
- See also
EscapeProperty for further details.
- def meet(that: EscapeProperty): EscapeProperty
Computes the greatest lower bound of this and that property values.
Computes the greatest lower bound of this and that property values.
- that
the other escape property value.
- returns
the most restrictive escape that is less or equal restrictive than
this
andthat
.
- Definition Classes
- EscapeViaHeapObject → EscapeProperty
- See also
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def productElementName(n: Int): String
- Definition Classes
- Product
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- def propertyName: String
The name of the property.
The name of the property.
- Definition Classes
- EscapeViaHeapObject → ExplicitlyNamedProperty
- def propertyValueID: Int
A unique id for every escape property.
A unique id for every escape property. Used for table switches.
- Definition Classes
- EscapeViaHeapObject → EscapeProperty
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated