![JAR search and dependency download from the Maven repository](/logo.png)
org.checkerframework.dataflow.cfg.block.ConditionalBlock Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of dataflow-shaded Show documentation
Show all versions of dataflow-shaded Show documentation
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.
package org.checkerframework.dataflow.cfg.block;
import org.checkerframework.dataflow.analysis.Store.FlowRule;
// Werner believes that a ConditionalBlock has to have exactly one RegularBlock (?) predecessor and
// the last node of that predecessor has to be a node of boolean type. He's not totally sure,
// though. We should check whether that property holds.
/** Represents a conditional basic block. */
public interface ConditionalBlock extends Block {
/**
* Returns the entry block of the then branch.
*
* @return the entry block of the then branch
*/
Block getThenSuccessor();
/**
* Returns the entry block of the else branch.
*
* @return the entry block of the else branch
*/
Block getElseSuccessor();
/**
* Returns the flow rule for information flowing from this block to its then successor.
*
* @return the flow rule for information flowing from this block to its then successor
*/
FlowRule getThenFlowRule();
/**
* Returns the flow rule for information flowing from this block to its else successor.
*
* @return the flow rule for information flowing from this block to its else successor
*/
FlowRule getElseFlowRule();
/**
* Set the flow rule for information flowing from this block to its then successor.
*
* @param rule the new flow rule for information flowing from this block to its then successor
*/
void setThenFlowRule(FlowRule rule);
/**
* Set the flow rule for information flowing from this block to its else successor.
*
* @param rule the new flow rule for information flowing from this block to its else successor
*/
void setElseFlowRule(FlowRule rule);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy