// ** This class was generated with DemFGen (vers:01/05/2008)

package gen;

import edu.neu.ccs.demeterf.control.Fields;
import edu.neu.ccs.demeterf.demfgen.lib.ident;
import edu.neu.ccs.demeterf.demfgen.lib.verbatim;
import edu.neu.ccs.demeterf.demfgen.lib.*;
import edu.neu.ccs.demeterf.*;



public class ToStr extends edu.neu.ccs.demeterf.ID{
   public static String ToStrM(Object o){
      return new edu.neu.ccs.demeterf.Traversal(new ToStr(),edu.neu.ccs.demeterf.Control.builtins()).<String>traverse(o);
   }

   String combine(byte o){ return ""+o; }
   String combine(short o){ return ""+o; }
   String combine(int o){ return ""+o; }
   String combine(long o){ return ""+o; }
   String combine(float o){ return ""+o; }
   String combine(double o){ return ""+o; }
   String combine(char o){ return ""+o; }
   String combine(boolean o){ return ""+o; }
   String combine(String o){ return "\""+o+"\""; }
   String combine(ident o){ return ""+o; }
   String combine(verbatim o){ return ""+o; }

   String combine(Some _h_, String just){
      return "Some("+just+")";
   }
   String combine(None _h_){
      return "None("+")";
   }
   String combine(Cons _h_, String first, String rest){
      return "Cons("+first+","+rest+")";
   }
   String combine(Empty _h_){
      return "Empty("+")";
   }
   String combine(Start _h_, String x){
      return "Start("+x+")";
   }
   String combine(X _h_, String c, String o){
      return "X("+c+","+o+")";
   }
   String combine(C _h_){
      return "C("+")";
   }
   String combine(Main _h_){
      return "Main("+")";
   }

}