Packages

c

org.opalj.tac.fpcf.analyses.cg

DoPrivilegedMethodAnalysis

class DoPrivilegedMethodAnalysis extends TACAIBasedAPIBasedAnalysis with TypeConsumerAnalysis

Models the behavior for java.security.AccessController.doPrivileged*.

On each call of the concrete doPrivilegedMethod method it will call the declaredRunMethod upon its first parameter and returns the result of this call.

For each such call, the analysis will add an indirect call to the call graph.

TODO: The current implementation won't work if the JDK is not included. In order to perform the analysis even if the method is a org.opalj.br.VirtualDeclaredMethod, the org.opalj.br.analyses.VirtualFormalParameters must also be present for those methods.

Source
DoPrivilegedCGAnalysis.scala
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DoPrivilegedMethodAnalysis
  2. TypeConsumerAnalysis
  3. TACAIBasedAPIBasedAnalysis
  4. APIBasedAnalysis
  5. ContextualAnalysis
  6. FPCFAnalysis
  7. ProjectBasedAnalysis
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. type ContextType = TypeIterator.ContextType
    Definition Classes
    TypeConsumerAnalysis
  2. type PropertyType = TypeIterator.PropertyType
    Definition Classes
    TypeConsumerAnalysis

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. val apiMethod: DeclaredMethod
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def c(state: CGState[ContextType], thisVar: V, thisActual: Some[(ValueInformation, IntTrieSet)])(eps: SomeEPS): ProperPropertyComputationResult
  7. final def ch: ClassHierarchy
    Definition Classes
    ProjectBasedAnalysis
  8. implicit final def classHierarchy: ClassHierarchy
    Definition Classes
    ProjectBasedAnalysis
  9. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  10. implicit val declaredMethods: DeclaredMethods
    Definition Classes
    APIBasedAnalysis
  11. final val declaredRunMethod: DeclaredMethod
  12. final val doPrivilegedMethod: DeclaredMethod
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  15. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  16. final def handleNewCaller(calleeContext: ContextType, callerContext: ContextType, pc: Int, isDirect: Boolean): ProperPropertyComputationResult
  17. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  18. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  19. implicit final def logContext: LogContext
    Definition Classes
    ProjectBasedAnalysis
  20. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  22. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  23. implicit final def p: SomeProject
    Definition Classes
    ProjectBasedAnalysis
  24. def processNewCaller(calleeContext: ContextType, callerContext: ContextType, callPC: Int, tac: TACode[TACMethodParameter, V], receiverOption: Option[Expr[V]], params: Seq[Option[Expr[V]]], targetVarOption: Option[V], isDirect: Boolean): ProperPropertyComputationResult
  25. val project: SomeProject
  26. implicit final val propertyStore: PropertyStore
    Definition Classes
    FPCFAnalysis
  27. final def ps: PropertyStore
    Definition Classes
    FPCFAnalysis
  28. final def registerAPIMethod(): ProperPropertyComputationResult
    Definition Classes
    APIBasedAnalysis
  29. def returnResult(thisVar: V, thisActual: Some[(ValueInformation, IntTrieSet)], calls: IndirectCalls)(implicit state: CGState[ContextType]): ProperPropertyComputationResult
  30. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  31. def toString(): String
    Definition Classes
    AnyRef → Any
  32. implicit val typeIterator: TypeIterator
    Definition Classes
    TypeConsumerAnalysis
  33. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  34. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  35. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from TypeConsumerAnalysis

Inherited from APIBasedAnalysis

Inherited from ContextualAnalysis

Inherited from FPCFAnalysis

Inherited from ProjectBasedAnalysis

Inherited from AnyRef

Inherited from Any

Ungrouped