package analyses
- Alphabetic
- Public
- Protected
Package Members
- package immutability
Type Members
- class ConfiguredPurity extends AnyRef
- class L0AllocationFreenessAnalysis extends FPCFAnalysis
A simple analysis that identifies methods that never allocate any objects/arrays.
- trait L0AllocationFreenessAnalysisScheduler extends FPCFAnalysisScheduler
- 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.
- trait L0CompileTimeConstancyAnalysisScheduler extends FPCFAnalysisScheduler
- 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.
- trait L0PurityAnalysisScheduler extends FPCFAnalysisScheduler
- class L0SelfReferenceLeakageAnalysis extends FPCFAnalysis
A shallow analysis that computes the self reference leakage property.
- class L1ThrownExceptionsAnalysis extends FPCFAnalysis
Analysis of thrown exceptions; computes the org.opalj.br.fpcf.properties.ThrownExceptions property.
- 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".
- class StaticDataUsageAnalysis extends FPCFAnalysis
A simple analysis that identifies methods that use global state that may vary during one or between several program executions.
- trait StaticDataUsageAnalysisScheduler extends FPCFAnalysisScheduler
- abstract class ThrownExceptionsAnalysisScheduler extends FPCFAnalysisScheduler
- 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.
- sealed trait VirtualCallAggregatingEscapeAnalysisScheduler extends FPCFAnalysisScheduler
- class VirtualMethodAllocationFreenessAnalysis extends FPCFAnalysis
Determines the aggregated allocation freeness for virtual methods.
- trait VirtualMethodAllocationFreenessAnalysisScheduler extends FPCFAnalysisScheduler
- class VirtualMethodPurityAnalysis extends FPCFAnalysis
Determines the aggregated purity for virtual methods.
- trait VirtualMethodPurityAnalysisScheduler extends FPCFAnalysisScheduler
- class VirtualMethodStaticDataUsageAnalysis extends FPCFAnalysis
Determines the aggregated static data usage for virtual methods.
- trait VirtualMethodStaticDataUsageAnalysisScheduler extends FPCFAnalysisScheduler
- class VirtualMethodThrownExceptionsAnalysis extends FPCFAnalysis
Aggregates the exceptions thrown by a method over all methods which override the respective method.
- trait VirtualMethodThrownExceptionsAnalysisScheduler extends FPCFAnalysisScheduler
- 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.
- sealed trait VirtualReturnValueFreshnessAnalysisScheduler extends FPCFAnalysisScheduler
Value Members
- object ConfiguredPurityKey extends ProjectInformationKey[ConfiguredPurity, Nothing]
- object EagerL0AllocationFreenessAnalysis extends L0AllocationFreenessAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
- object EagerL0CompileTimeConstancyAnalysis extends L0CompileTimeConstancyAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
- object EagerL0PurityAnalysis extends L0PurityAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
- object EagerL1ThrownExceptionsAnalysis extends ThrownExceptionsAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
Factory and runner for the L1ThrownExceptionsAnalysis.
- object EagerStaticDataUsageAnalysis extends StaticDataUsageAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
- object EagerVirtualCallAggregatingEscapeAnalysis extends VirtualCallAggregatingEscapeAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
- object EagerVirtualMethodAllocationFreenessAnalysis extends VirtualMethodAllocationFreenessAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
- object EagerVirtualMethodPurityAnalysis extends VirtualMethodPurityAnalysisScheduler with FPCFEagerAnalysisScheduler
- object EagerVirtualMethodStaticDataUsageAnalysis extends VirtualMethodStaticDataUsageAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
- object EagerVirtualMethodThrownExceptionsAnalysis extends VirtualMethodThrownExceptionsAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
Factory/executor of the thrown exceptions analysis.
- object EagerVirtualReturnValueFreshnessAnalysis extends VirtualReturnValueFreshnessAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
- object L0SelfReferenceLeakageAnalysis extends BasicFPCFEagerAnalysisScheduler
- object LazyL0AllocationFreenessAnalysis extends L0AllocationFreenessAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
- object LazyL0CompileTimeConstancyAnalysis extends L0CompileTimeConstancyAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
- object LazyL0PurityAnalysis extends L0PurityAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
- object LazyL1ThrownExceptionsAnalysis extends ThrownExceptionsAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
Factory and runner for the L1ThrownExceptionsAnalysis.
- object LazyStaticDataUsageAnalysis extends StaticDataUsageAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
- object LazyVirtualCallAggregatingEscapeAnalysis extends VirtualCallAggregatingEscapeAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
- object LazyVirtualMethodAllocationFreenessAnalysis extends VirtualMethodAllocationFreenessAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
- object LazyVirtualMethodPurityAnalysis extends VirtualMethodPurityAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
- object LazyVirtualMethodStaticDataUsageAnalysis extends VirtualMethodStaticDataUsageAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
- object LazyVirtualMethodThrownExceptionsAnalysis extends VirtualMethodThrownExceptionsAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
Factory/executor of the thrown exceptions analysis.
- object LazyVirtualReturnValueFreshnessAnalysis extends VirtualReturnValueFreshnessAnalysisScheduler with BasicFPCFLazyAnalysisScheduler