Class LoadedFieldSetFactory

java.lang.Object
edu.umd.cs.findbugs.classfile.engine.bcel.AnalysisFactory<LoadedFieldSet>
edu.umd.cs.findbugs.classfile.engine.bcel.LoadedFieldSetFactory
All Implemented Interfaces:
IAnalysisEngine<MethodDescriptor,LoadedFieldSet>, IMethodAnalysisEngine<LoadedFieldSet>

public class LoadedFieldSetFactory extends AnalysisFactory<LoadedFieldSet>
Factory to determine which fields are loaded and stored by the instructions in a method, and the overall method. The main purpose is to support efficient redundant load elimination and forward substitution in ValueNumberAnalysis (there is no need to remember stores of fields that are never read, or loads of fields that are only loaded in one location). However, it might be useful for other kinds of analysis.

The tricky part is that in addition to fields loaded and stored with get/putfield and get/putstatic, we also try to figure out field accessed through calls to inner-class access methods.

  • Constructor Details

    • LoadedFieldSetFactory

      public LoadedFieldSetFactory()
      Constructor.
  • Method Details