package accrue.analysis.ext;

import java.util.Map;

import polyglot.ast.Unary;
import polyglot.util.SerialVersionUID;
import polyglot.visit.DataFlow;
import polyglot.visit.FlowGraph;
import polyglot.visit.FlowGraph.EdgeKey;
import polyglot.visit.FlowGraph.Peer;
import accrue.analysis.interprocanalysis.DataFlowDispatch;

public class ExtUnary extends ExtPrimitiveExpr {
    private static final long serialVersionUID = SerialVersionUID.generate();

    @Override
    public <DFItem extends DataFlow.Item> Map<EdgeKey, DFItem> flowDispatch(
            DataFlowDispatch<DFItem> d, DFItem dfIn, DFItem trueItem,
            DFItem falseItem, FlowGraph<DFItem> graph, Peer<DFItem> peer) {
        Unary n = (Unary) this.node();
        return d.flowUnary(n, dfIn, trueItem, falseItem, graph, peer);
    }

}
