package edu.neu.ccs.demeter.aplib; import java.util.Collection; /** An encapsulated strategy consisting of a strategy graph S, sets of source and target nodes s and t (subsets of nodes in S), a name relation N from nodes in S to symbolic names (strings), and a constraint map B from edges in S to predicates over symbolic elements. */ public interface SimpleStrategyI extends StrategyI { /** The strategy graph S. */ StrategyGraphI getStrategyGraph(); /** The source set s, a collection of nodes in the strategy graph S. */ Collection getSources(); /** The target set t, a collection of nodes in the strategy graph S. */ Collection getTargets(); /** The set N(v), a collection of symbolic names (strings) corresponding to node v in the strategy graph S. Return null if v is a wildcard node, intended to map to all class graph nodes. */ Collection getNames(Object v); /** The constraint map B. Return null for Btrue, in which all predicates return true. */ ConstraintMapI getConstraintMap(); }