Class NullnessStore

All Implemented Interfaces:
Store<NullnessStore>, org.plumelib.util.UniqueId

public class NullnessStore extends InitializationStore<NullnessValue,NullnessStore> implements org.plumelib.util.UniqueId
Behaves like InitializationStore, but additionally tracks whether PolyNull is known to be NonNull or Nullable (or not known to be either).
  • Field Details

    • isPolyNullNonNull

      protected boolean isPolyNullNonNull
      True if, at this point, PolyNull is known to be NonNull.
    • isPolyNullNull

      protected boolean isPolyNullNull
      True if, at this point, PolyNull is known to be Nullable.
  • Constructor Details

    • NullnessStore

      public NullnessStore(CFAbstractAnalysis<NullnessValue,NullnessStore,?> analysis, boolean sequentialSemantics)
      Create a NullnessStore.
      Parameters:
      analysis - the analysis class this store belongs to
      sequentialSemantics - should the analysis use sequential Java semantics (i.e., assume that only one thread is running at all times)?
    • NullnessStore

      public NullnessStore(NullnessStore s)
      Create a NullnessStore (copy constructor).
      Parameters:
      s - a store to copy
  • Method Details