package fieldassignability
- Alphabetic
- Public
- Protected
Type Members
- trait AbstractFieldAssignabilityAnalysis extends FPCFAnalysis
- class L0FieldAssignabilityAnalysis extends FPCFAnalysis
Determines if a private, static, non-final field is always initialized at most once or if a field is or can be mutated after (lazy) initialization.
Determines if a private, static, non-final field is always initialized at most once or if a field is or can be mutated after (lazy) initialization. Field read and writes at initialization time (e.g., if the current class object is registered in some publicly available data-store) are not considered. This is in-line with the semantics of final, which also does not prevent reads of partially initialized objects.
- trait L0FieldAssignabilityAnalysisScheduler extends FPCFAnalysisScheduler
- class L1FieldAssignabilityAnalysis extends AbstractFieldAssignabilityAnalysis
Simple analysis that checks if a private (static or instance) field is always initialized at most once or if a field is or can be mutated after (lazy) initialization.
Simple analysis that checks if a private (static or instance) field is always initialized at most once or if a field is or can be mutated after (lazy) initialization.
- Note
Requires that the 3-address code's expressions are not deeply nested.
- sealed trait L1FieldAssignabilityAnalysisScheduler extends FPCFAnalysisScheduler
- class L2FieldAssignabilityAnalysis extends AbstractFieldAssignabilityAnalysis with FPCFAnalysis
Determines the assignability of a field.
Determines the assignability of a field.
- Note
Requires that the 3-address code's expressions are not deeply nested.
- trait L2FieldAssignabilityAnalysisScheduler extends FPCFAnalysisScheduler
Value Members
- object EagerL0FieldAssignabilityAnalysis extends L0FieldAssignabilityAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
Factory object to create instances of the FieldImmutabilityAnalysis.
- object EagerL1FieldAssignabilityAnalysis extends L1FieldAssignabilityAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
Executor for the eager field assignability analysis.
- object EagerL2FieldAssignabilityAnalysis extends L2FieldAssignabilityAnalysisScheduler with BasicFPCFEagerAnalysisScheduler
Executor for the eager field assignability analysis.
- object LazyL0FieldAssignabilityAnalysis extends L0FieldAssignabilityAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
- object LazyL1FieldAssignabilityAnalysis extends L1FieldAssignabilityAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
Executor for the lazy field assignability analysis.
- object LazyL2FieldAssignabilityAnalysis extends L2FieldAssignabilityAnalysisScheduler with BasicFPCFLazyAnalysisScheduler
Executor for the lazy field assignability analysis.