Package edu.neu.ccs.demeterf.control

DemeterF traversal control classes.


Class Summary
Edge Represents Outgoing Edges within a ClassGraph (class hierarchy).
EdgeBypass Supports the ability to skip/bypass edges of a structure while Traversing.
EdgeOnly Supports the ability to skip/bypass edges while Traversing.
EdgeRemove Supports the ability to ignore/remove edges of a structure when Traversing.
Everywhere Bypasses no edges (immutable) i.e., go everywhere
Fields Represents a containment class for Fields We encode seperate argument paths with inner classes that extend Fields.any.
Fields.any Base Field class that represents the pending traversal of any field.
Nowhere Bypass all edges (immutable) i.e., go nowhere (one step)

Package edu.neu.ccs.demeterf.control Description

DemeterF traversal control classes. Bypassing (not traversing) Edges and adding classes as builtins are supported. When an edge is bypassed, the traversal simply returns that object; no function object or method is called. When an object of a builtin type (either a primitive or user specified builtin class) is traversed, then the function class is called on the object without entering/traversing any of its fields.

See Examples for more details.