edu.neu.ccs.demeterf.control
Class EdgeOnly

java.lang.Object
  extended by edu.neu.ccs.demeterf.Control
      extended by edu.neu.ccs.demeterf.control.MutableControl
          extended by edu.neu.ccs.demeterf.control.EdgeBypass
              extended by edu.neu.ccs.demeterf.control.EdgeOnly

public class EdgeOnly
extends EdgeBypass

Supports the ability to skip/bypass edges while Traversing. It is essentially the opposite of the EdgeBypass control. Using this class you can dictate the only edges to be traversed, rather than stating which edges will not be traversed.


Constructor Summary
EdgeOnly(java.lang.Class<?>... cs)
          Only traverse the edges of the given classes
EdgeOnly(Edge... edges)
           
EdgeOnly(java.lang.String bypass)
          Takes a String in the format of "package.Class.edge "+ (meaning more than one).
EdgeOnly(java.lang.String pkg, java.lang.String bypass)
           
 
Method Summary
 boolean skip(Edge e)
          Returns whether or not to bypass/skip the given Edge
 
Methods inherited from class edu.neu.ccs.demeterf.control.EdgeBypass
addBuiltIn, addBuiltIns, addBypassing, addBypassing, addBypassing, ignore, ignore, removeBypassing, removeBypassing, skip
 
Methods inherited from class edu.neu.ccs.demeterf.Control
builtins, bypass, bypass, bypass, bypass, everywhere, isBuiltIn, isBuiltInOld, nowhere, only, only, only, only, remove, remove, remove, remove
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EdgeOnly

public EdgeOnly(Edge... edges)

EdgeOnly

public EdgeOnly(java.lang.Class<?>... cs)
Only traverse the edges of the given classes


EdgeOnly

public EdgeOnly(java.lang.String bypass)
Takes a String in the format of "package.Class.edge "+ (meaning more than one). We then attempt to create an EdgeOnly with which the given edges will be traversed. Static methods within Type can be used to extend the paths that that are used to search for classes.


EdgeOnly

public EdgeOnly(java.lang.String pkg,
                java.lang.String bypass)
Method Detail

skip

public boolean skip(Edge e)
Description copied from class: Control
Returns whether or not to bypass/skip the given Edge

Overrides:
skip in class EdgeBypass