public static Type toType(Object arg)
{
if (arg is Type) return (Type)arg;
string arg2 = stringify(arg, false);
if (arg2== (Object)("void")) return System.Void.TYPE;
else if (arg2== (Object)("bool")) return System.Boolean.TYPE;
else if (arg2== (Object)("char")) return System.Char.TYPE;
else if (arg2== (Object)("byte")) return System.Byte.TYPE;
else if (arg2== (Object)("short")) return System.Short.TYPE;
else if (arg2== (Object)("int")) return System.Integer.TYPE;
else if (arg2== (Object)("long")) return System.Long.TYPE;
else if (arg2== (Object)("float")) return System.Float.TYPE;
else if (arg2== (Object)("double")) return System.Double.TYPE;
else return Type.ForName((String)arg);
}