Packages

o

org.opalj.fpcf.properties

EscapeInCallee

object EscapeInCallee extends FinalEscapeProperty with Product with Serializable

The object escapes the current method M via the arguments of a method M' that is called by M but does not let the argument escape. This implies that the object is also local to the thread.

Example:
  1. Given the following code:

    public class X{
     public Object f;
     public void foo() {
      Object o = new Object();        // ALLOCATION SITE
      bar(o);
     }
     public int bar(Object p) {
      if (p == null) // do not let p escape
       return -1;
      return 0;
     }
    }

    An analysis is only expected to return EscapeInCallee for the object o instantiated in foo, if the analyses knows(!) that no subclass of X overrides bar s.t. it let its parameter escape.

See also

EscapeProperty for further details.

Linear Supertypes
Serializable, Serializable, Product, Equals, FinalEscapeProperty, EscapeProperty, EscapePropertyMetaInformation, ExplicitlyNamedProperty, OrderedProperty, Property, PropertyMetaInformation, PropertyKind, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. EscapeInCallee
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. FinalEscapeProperty
  7. EscapeProperty
  8. EscapePropertyMetaInformation
  9. ExplicitlyNamedProperty
  10. OrderedProperty
  11. Property
  12. PropertyMetaInformation
  13. PropertyKind
  14. AnyRef
  15. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final type Self = EscapeProperty
    Definition Classes
    EscapePropertyMetaInformation → PropertyMetaInformation

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 val PID: Int(1)
  5. def asAggregatedProperty: VirtualMethodEscapeProperty
    Definition Classes
    EscapeProperty
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. final def asOrderedProperty: OrderedProperty
    Definition Classes
    Property
  8. def checkIsEqualOrBetterThan(e: Entity, other: Self): Unit
    Definition Classes
    EscapeProperty → OrderedProperty
  9. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. final def id: Int
    Definition Classes
    PropertyMetaInformation → PropertyKind
  15. 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
    EscapeInCalleeEscapeProperty
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. final def isOrderedProperty: Boolean
    Definition Classes
    Property
  18. 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
    EscapeInCalleeEscapeProperty
  19. final def key: PropertyKey[EscapeProperty]
    Definition Classes
    EscapeProperty → PropertyMetaInformation
  20. 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 that.

    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 that. E.g., returns true if this property identifies values which GlobalEscape and the given property (that) refers to values that NoEscape.

    Definition Classes
    EscapeInCalleeEscapeProperty
    See also

    EscapeProperty for further details.

  21. def meet(that: FinalEscapeProperty): FinalEscapeProperty
    Definition Classes
    EscapeInCalleeFinalEscapeProperty
  22. 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 and that.

    Definition Classes
    EscapeInCalleeEscapeProperty
    See also

    EscapeProperty.lessOrEqualRestrictive

  23. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  24. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  25. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  26. def propertyName: String
    Definition Classes
    EscapeInCallee → ExplicitlyNamedProperty
  27. def propertyValueID: Int

    A unique id for every escape property.

    A unique id for every escape property. Used for table switches.

    Definition Classes
    EscapeInCalleeEscapeProperty
  28. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  29. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  30. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from FinalEscapeProperty

Inherited from EscapeProperty

Inherited from ExplicitlyNamedProperty

Inherited from OrderedProperty

Inherited from Property

Inherited from PropertyMetaInformation

Inherited from PropertyKind

Inherited from AnyRef

Inherited from Any

Ungrouped