Packages

p

org.opalj.br.fpcf

analyses

package analyses

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Package Members

  1. package immutability

Type Members

  1. class ConfiguredPurity extends AnyRef

  2. class L0AllocationFreenessAnalysis extends FPCFAnalysis

    A simple analysis that identifies methods that never allocate any objects/arrays.

  3. trait L0AllocationFreenessAnalysisScheduler extends FPCFAnalysisScheduler
  4. class L0CompileTimeConstancyAnalysis extends FPCFAnalysis

    A simple analysis that identifies constant (effectively) final static fields that are deterministically initialized to the same value on every program execution.

    A simple analysis that identifies constant (effectively) final static fields that are deterministically initialized to the same value on every program execution. This analysis just examines the ConstantValue attribute of the field.

  5. trait L0CompileTimeConstancyAnalysisScheduler extends FPCFAnalysisScheduler
  6. class L0PurityAnalysis extends FPCFAnalysis

    Very simple, fast, sound but also imprecise analysis of the purity of methods.

    Very simple, fast, sound but also imprecise analysis of the purity of methods. See the org.opalj.br.fpcf.properties.Purity property for details regarding the precise semantics of (Im)Pure.

    This analysis is a very, very shallow implementation that immediately gives up, when something "complicated" (e.g., method calls which take objects) is encountered. It also does not perform any significant control-/data-flow analyses.

  7. trait L0PurityAnalysisScheduler extends FPCFAnalysisScheduler
  8. class L0SelfReferenceLeakageAnalysis extends FPCFAnalysis

    A shallow analysis that computes the self reference leakage property.

  9. class L1ThrownExceptionsAnalysis extends FPCFAnalysis

    Analysis of thrown exceptions; computes the org.opalj.br.fpcf.properties.ThrownExceptions property.

  10. class MethodComplexityAnalysis extends AnyRef

    A shallow analysis that tries to identify methods that are relatively simple, that is, which don't have loops and don't depend on other (more) complex methods.

    A shallow analysis that tries to identify methods that are relatively simple, that is, which don't have loops and don't depend on other (more) complex methods. For such methods it often makes sense to "inline them at analysis time".

  11. class StaticDataUsageAnalysis extends FPCFAnalysis

    A simple analysis that identifies methods that use global state that may vary during one or between several program executions.

  12. trait StaticDataUsageAnalysisScheduler extends FPCFAnalysisScheduler
  13. abstract class ThrownExceptionsAnalysisScheduler extends FPCFAnalysisScheduler
  14. class VirtualCallAggregatingEscapeAnalysis extends FPCFAnalysis

    Aggregates the escape information for virtual formal parameters.

    Aggregates the escape information for virtual formal parameters. That are all possible call targets that override the method attached to the virtual method.

    See also

    org.opalj.br.fpcf.properties.EscapeProperty org.opalj.br.analyses.VirtualFormalParameter

  15. sealed trait VirtualCallAggregatingEscapeAnalysisScheduler extends FPCFAnalysisScheduler
  16. class VirtualMethodAllocationFreenessAnalysis extends FPCFAnalysis

    Determines the aggregated allocation freeness for virtual methods.

  17. trait VirtualMethodAllocationFreenessAnalysisScheduler extends FPCFAnalysisScheduler
  18. class VirtualMethodPurityAnalysis extends FPCFAnalysis

    Determines the aggregated purity for virtual methods.

  19. trait VirtualMethodPurityAnalysisScheduler extends FPCFAnalysisScheduler
  20. class VirtualMethodStaticDataUsageAnalysis extends FPCFAnalysis

    Determines the aggregated static data usage for virtual methods.

  21. trait VirtualMethodStaticDataUsageAnalysisScheduler extends FPCFAnalysisScheduler
  22. class VirtualMethodThrownExceptionsAnalysis extends FPCFAnalysis

    Aggregates the exceptions thrown by a method over all methods which override the respective method.

  23. trait VirtualMethodThrownExceptionsAnalysisScheduler extends FPCFAnalysisScheduler
  24. class VirtualReturnValueFreshnessAnalysis extends FPCFAnalysis

    An analysis that aggregates whether the return value for all possible methods represented by a given org.opalj.br.DeclaredMethod are always freshly allocated.

  25. sealed trait VirtualReturnValueFreshnessAnalysisScheduler extends FPCFAnalysisScheduler

Value Members

  1. object ConfiguredPurityKey extends ProjectInformationKey[ConfiguredPurity, Nothing]
  2. object EagerL0AllocationFreenessAnalysis extends L0AllocationFreenessAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
  3. object EagerL0CompileTimeConstancyAnalysis extends L0CompileTimeConstancyAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
  4. object EagerL0PurityAnalysis extends L0PurityAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
  5. object EagerL1ThrownExceptionsAnalysis extends ThrownExceptionsAnalysisScheduler with BasicFPCFEagerAnalysisScheduler

    Factory and runner for the L1ThrownExceptionsAnalysis.

  6. object EagerStaticDataUsageAnalysis extends StaticDataUsageAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
  7. object EagerVirtualCallAggregatingEscapeAnalysis extends VirtualCallAggregatingEscapeAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
  8. object EagerVirtualMethodAllocationFreenessAnalysis extends VirtualMethodAllocationFreenessAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
  9. object EagerVirtualMethodPurityAnalysis extends VirtualMethodPurityAnalysisScheduler with FPCFEagerAnalysisScheduler
  10. object EagerVirtualMethodStaticDataUsageAnalysis extends VirtualMethodStaticDataUsageAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
  11. object EagerVirtualMethodThrownExceptionsAnalysis extends VirtualMethodThrownExceptionsAnalysisScheduler with BasicFPCFEagerAnalysisScheduler

    Factory/executor of the thrown exceptions analysis.

  12. object EagerVirtualReturnValueFreshnessAnalysis extends VirtualReturnValueFreshnessAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
  13. object L0SelfReferenceLeakageAnalysis extends BasicFPCFEagerAnalysisScheduler
  14. object LazyL0AllocationFreenessAnalysis extends L0AllocationFreenessAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
  15. object LazyL0CompileTimeConstancyAnalysis extends L0CompileTimeConstancyAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
  16. object LazyL0PurityAnalysis extends L0PurityAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
  17. object LazyL1ThrownExceptionsAnalysis extends ThrownExceptionsAnalysisScheduler with BasicFPCFLazyAnalysisScheduler

    Factory and runner for the L1ThrownExceptionsAnalysis.

  18. object LazyStaticDataUsageAnalysis extends StaticDataUsageAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
  19. object LazyVirtualCallAggregatingEscapeAnalysis extends VirtualCallAggregatingEscapeAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
  20. object LazyVirtualMethodAllocationFreenessAnalysis extends VirtualMethodAllocationFreenessAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
  21. object LazyVirtualMethodPurityAnalysis extends VirtualMethodPurityAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
  22. object LazyVirtualMethodStaticDataUsageAnalysis extends VirtualMethodStaticDataUsageAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
  23. object LazyVirtualMethodThrownExceptionsAnalysis extends VirtualMethodThrownExceptionsAnalysisScheduler with BasicFPCFLazyAnalysisScheduler

    Factory/executor of the thrown exceptions analysis.

  24. object LazyVirtualReturnValueFreshnessAnalysis extends VirtualReturnValueFreshnessAnalysisScheduler with BasicFPCFLazyAnalysisScheduler

Ungrouped