package edu.neu.ccs.demeterf.demfgen.traversals; import edu.neu.ccs.demeterf.demfgen.*; /** Represents a little traversal factory, so there's a central place to * switch from reflective to inlined/generated traversals. The traversal factories * are placed in the following classes: * <ul> * <li><code>edu.neu.ccs.demeterf.demfgen.Factory</code></li> * <li><code>edu.neu.ccs.demeterf.demfgen.traversals.Travs</code></li> * <li><code>edu.neu.ccs.demeterf.demfgen.dgp.traversals.Travs</code></li> * </ul> */ public class Travs{ //public static Travs TheFactory = new Travs(); public static ReflectiveTraversals TheFactory = new ReflectiveTraversals(); public static DGPGenTrav makeDGPGenTrav(DemFGenMain.DGPGen f){ return new DGPGenTrav(f); } public TypeCheckTrav makeTypeCheckTrav(TypeCheck f){ return new TypeCheckTrav(f); } public ClassGenTrav makeClassGenTrav(ClassGen f){ return new ClassGenTrav(f); } public ParseGenTrav makeParseGenTrav(ParseGen.CombStr f){ return new ParseGenTrav(f); } public JJGenTrav makeJJGenTrav(ParseGen.JJProd f){ return new JJGenTrav(f); } public ParamArityTrav makeParamArityTrav(ClassGen.ToList f){ return new ParamArityTrav(f); } public TypeArityTrav makeTypeArityTrav(ClassGen.ToTDList f){ return new TypeArityTrav(f); } }