All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.checkerframework.dataflow.analysis.BackwardAnalysis Maven / Gradle / Ivy

Go to download

dataflow-shaded is a dataflow framework based on the javac compiler. It differs from the org.checkerframework:dataflow artifact in two ways. First, the packages in this artifact have been renamed to org.checkerframework.shaded.*. Second, unlike the dataflow artifact, this artifact contains the dependencies it requires.

There is a newer version: 3.48.3
Show newest version
package org.checkerframework.dataflow.analysis;

import org.checkerframework.checker.nullness.qual.Nullable;

/**
 * This interface defines a backward analysis, given a control flow graph and a backward transfer
 * function.
 *
 * @param  the abstract value type to be tracked by the analysis
 * @param  the store type used in the analysis
 * @param  the backward transfer function type that is used to approximate run-time behavior
 */
public interface BackwardAnalysis<
        V extends AbstractValue, S extends Store, T extends BackwardTransferFunction>
    extends Analysis {

  /**
   * Get the output store at the entry block of a given control flow graph. For a backward analysis,
   * the output store contains the analyzed flow information from the exit block to the entry block.
   *
   * @return the output store at the entry block of a given control flow graph
   */
  @Nullable S getEntryStore();
}