// ** This file was generated with DemFGen (vers:05/23/2010) package edu.neu.ccs.demeterf.demfgen.classes; import edu.neu.ccs.demeterf.Fields; import edu.neu.ccs.demeterf.lib.ident; import edu.neu.ccs.demeterf.lib.verbatim; import edu.neu.ccs.demeterf.lib.*; import edu.neu.ccs.demeterf.lib.*; import edu.neu.ccs.demeterf.demfgen.*; import edu.neu.ccs.demeterf.demfgen.dgp.DGPFunc; import edu.neu.ccs.demeterf.demfgen.traversals.Travs; import edu.neu.ccs.demeterf.demfgen.pcdgp.PCDGPFunc; import edu.neu.ccs.demeterf.dispatch.*; import edu.neu.ccs.demeterf.*; import edu.neu.ccs.demeterf.demfgen.ClassHier.InhrtPair; import edu.neu.ccs.demeterf.demfgen.DemFGenMain; import java.io.*; import java.io.FileInputStream; import edu.neu.ccs.demeterf.util.Util; import edu.neu.ccs.demeterf.util.CLI; /** Computes a simple String representation */ public class ToStr extends edu.neu.ccs.demeterf.FC{ /** Static stub method for calling toStr */ public static String ToStrM(Object o){ return new edu.neu.ccs.demeterf.Traversal(new ToStr(),edu.neu.ccs.demeterf.Control.builtins()).<String>traverse(o); } public String combine(byte _h_) { return ""+_h_; } public String combine(short _h_) { return ""+_h_; } public String combine(int _h_) { return ""+_h_; } public String combine(long _h_) { return ""+_h_; } public String combine(float _h_) { return ""+_h_; } public String combine(double _h_) { return ""+_h_; } public String combine(char _h_) { return "\'"+escape(""+_h_)+"\'"; } public String combine(boolean _h_) { return ""+_h_; } public String combine(String _h_) { return "\""+escape(""+_h_)+"\""; } public String combine(ident _h_) { return ""+_h_; } public String combine(verbatim _h_) { return ""+_h_; } public String combine(CDFile _h_, String incl, String dgpuse, String pkg, String look, String imports, String types) { return "CDFile("+incl+","+dgpuse+","+pkg+","+look+","+imports+","+types+")"; } public String combine(Include _h_, String gen, String file) { return "Include("+gen+","+file+")"; } public String combine(IncludeCons _h_, String first, String rest) { return "IncludeCons("+first+","+rest+")"; } public String combine(IncludeEmpty _h_) { return "IncludeEmpty("+")"; } public String combine(DGPUse _h_, String pkg) { return "DGPUse("+pkg+")"; } public String combine(NoDGPUse _h_) { return "NoDGPUse("+")"; } public String combine(Package _h_, String pkg) { return "Package("+pkg+")"; } public String combine(NoPackage _h_) { return "NoPackage("+")"; } public String combine(LookAhead _h_, String n) { return "LookAhead("+n+")"; } public String combine(NoLook _h_) { return "NoLook("+")"; } public String combine(Import _h_, String pkg) { return "Import("+pkg+")"; } public String combine(NEPkgList _h_, String id, String rest) { return "NEPkgList("+id+","+rest+")"; } public String combine(PkgCons _h_, String id, String rest) { return "PkgCons("+id+","+rest+")"; } public String combine(PkgStar _h_) { return "PkgStar("+")"; } public String combine(PkgEmpty _h_) { return "PkgEmpty("+")"; } public String combine(ImportCons _h_, String first, String rest) { return "ImportCons("+first+","+rest+")"; } public String combine(ImportEmpty _h_) { return "ImportEmpty("+")"; } public String combine(IntfcDef _h_, String gen, String name, String tparams, String subtypes) { return "IntfcDef("+gen+","+name+","+tparams+","+subtypes+")"; } public String combine(ClassDef _h_, String gen, String name, String tparams, String subtypes, String fields, String ext) { return "ClassDef("+gen+","+name+","+tparams+","+subtypes+","+fields+","+ext+")"; } public String combine(NoGen _h_) { return "NoGen("+")"; } public String combine(NoParse _h_) { return "NoParse("+")"; } public String combine(Extern _h_) { return "Extern("+")"; } public String combine(YesGen _h_) { return "YesGen("+")"; } public String combine(DefParams _h_, String types) { return "DefParams("+types+")"; } public String combine(EmptyDefParams _h_) { return "EmptyDefParams("+")"; } public String combine(NameDef _h_, String id, String bnd) { return "NameDef("+id+","+bnd+")"; } public String combine(ClassBound _h_, String bound) { return "ClassBound("+bound+")"; } public String combine(NoBound _h_) { return "NoBound("+")"; } public String combine(NoImpl _h_) { return "NoImpl("+")"; } public String combine(IntfImpl _h_, String intf) { return "IntfImpl("+intf+")"; } public String combine(NENameList _h_, String first, String rest) { return "NENameList("+first+","+rest+")"; } public String combine(NameCons _h_, String first, String rest) { return "NameCons("+first+","+rest+")"; } public String combine(NameEmpty _h_) { return "NameEmpty("+")"; } public String combine(TypeUse _h_, String name, String tparams) { return "TypeUse("+name+","+tparams+")"; } public String combine(UseParams _h_, String types) { return "UseParams("+types+")"; } public String combine(EmptyUseParams _h_) { return "EmptyUseParams("+")"; } public String combine(NETypeUseList _h_, String first, String rest) { return "NETypeUseList("+first+","+rest+")"; } public String combine(TypeUseCons _h_, String first, String rest) { return "TypeUseCons("+first+","+rest+")"; } public String combine(TypeUseEmpty _h_) { return "TypeUseEmpty("+")"; } public String combine(Field _h_, String name, String type) { return "Field("+name+","+type+")"; } public String combine(AddSpace _h_) { return "AddSpace("+")"; } public String combine(AddTab _h_) { return "AddTab("+")"; } public String combine(AddLine _h_) { return "AddLine("+")"; } public String combine(AddReturn _h_) { return "AddReturn("+")"; } public String combine(Plus _h_) { return "Plus("+")"; } public String combine(Minus _h_) { return "Minus("+")"; } public String combine(AddToken _h_, String str) { return "AddToken("+str+")"; } public String combine(TheEOF _h_) { return "TheEOF("+")"; } public String combine(RealToken _h_, String str) { return "RealToken("+str+")"; } public String combine(EmptyToken _h_) { return "EmptyToken("+")"; } public String combine(TypeDefCons _h_, String first, String rest) { return "TypeDefCons("+first+","+rest+")"; } public String combine(TypeDefEmpty _h_) { return "TypeDefEmpty("+")"; } public String combine(FieldCons _h_, String first, String rest) { return "FieldCons("+first+","+rest+")"; } public String combine(FieldEmpty _h_) { return "FieldEmpty("+")"; } public String combine(NESubtypeList _h_, String first, String rest) { return "NESubtypeList("+first+","+rest+")"; } public String combine(SubtypeCons _h_, String first, String rest) { return "SubtypeCons("+first+","+rest+")"; } public String combine(SubtypeEmpty _h_) { return "SubtypeEmpty("+")"; } public String combine(BehFile _h_, String incl, String behs) { return "BehFile("+incl+","+behs+")"; } public String combine(BehDefCons _h_, String first, String rest) { return "BehDefCons("+first+","+rest+")"; } public String combine(BehDefEmpty _h_) { return "BehDefEmpty("+")"; } public String combine(BehDef _h_, String name, String body) { return "BehDef("+name+","+body+")"; } public String combine(TE _h_) { return "TE("+")"; } public String combine(RTParseException _h_) { return "RTParseException("+")"; } public String combine(RTFileNotFound _h_) { return "RTFileNotFound("+")"; } public String combine(DummyDGP _h_, String behavior) { return "DummyDGP("+behavior+")"; } public String combine(DummyTrav _h_, String dfgl, String tdl, String dgpl, String otdl, String flds) { return "DummyTrav("+dfgl+","+tdl+","+dgpl+","+otdl+","+flds+")"; } public String combine(RED _h_) { return "RED("+")"; } public String combine(BLACK _h_) { return "BLACK("+")"; } public static String escape(String s){ char str[] = s.toCharArray(); StringBuffer ret = new StringBuffer(""); for(char c:str)ret.append(escape(c)); return ret.toString(); } public static String escape(char c){ switch(c){ case '\n':return "\\n"; case '\t':return "\\t"; case '\b':return "\\b"; case '\r':return "\\r"; case '\f':return "\\f"; case '\\':return "\\\\"; case '\'':return "\\'"; case '\"':return "\\\""; default: return ""+c; } } public String combine(Empty _h_) { return "Empty("+")"; } public String combine(Cons _h_, String first, String rest) { return "Cons("+first+","+rest+")"; } public String combine(None _h_) { return "None("+")"; } public String combine(Some _h_, String just) { return "Some("+just+")"; } }