2003/11/17 01:53:25
[org.ibex.core.git] / src / org / xwt / js / JSDate.java
index 37624b4..901ee9d 100644 (file)
@@ -46,6 +46,7 @@ import java.text.SimpleDateFormat;
  * This class implements the Date native object.
  * See ECMA 15.9.
  * @author Mike McCabe
+ * @author Adam Megacz (many modifications
  */
 public class JSDate extends JSCallable {
 
@@ -60,207 +61,118 @@ public class JSDate extends JSCallable {
 
     public String coerceToString() { return date_format(date, FORMATSPEC_FULL); }
 
-    public Object call(Object name, JSArray args_) {
-        Object[] args = new Object[args_.length()];
-        for(int i=0; i<args.length; i++) args[i] = args_.elementAt(i);
-
-        if (name.equals(getIdName(ConstructorId_UTC))) { 
-            return new Double(jsStaticJSFunction_UTC(args));
-            
-        } else if (name.equals(getIdName(ConstructorId_parse))) { 
-            return new Double(jsStaticJSFunction_parse(args[0].toString()));
-            
-        } else if (name.equals(getIdName(Id_constructor))) {
-            return new JSDate(args_);
-            
-        } else if (name.equals(getIdName(Id_toString))) {
-            double t = date;
-            return date_format(t, FORMATSPEC_FULL);
-
-        } else if (name.equals(getIdName(Id_toTimeString))) {
-            double t = date;
-            return date_format(t, FORMATSPEC_TIME);
-
-        } else if (name.equals(getIdName(Id_toDateString))) {
-            double t = date;
-            return date_format(t, FORMATSPEC_DATE);
-
-        } else if (name.equals(getIdName(Id_toLocaleString))) {
-            double t = date;
-            return jsJSFunction_toLocaleString(t);
-
-        } else if (name.equals(getIdName(Id_toLocaleTimeString))) {
-            double t = date;
-            return jsJSFunction_toLocaleTimeString(t);
-
-        } else if (name.equals(getIdName(Id_toLocaleDateString))) {
-            double t = date;
-            return jsJSFunction_toLocaleDateString(t);
-
-        } else if (name.equals(getIdName(Id_toUTCString))) {
-            double t = date;
-            return jsJSFunction_toUTCString(t);
-
-        } else if (name.equals(getIdName(Id_valueOf))) { 
-            return new Double(this.date);
-
-        } else if (name.equals(getIdName(Id_getTime))) { 
-            return new Double(this.date);
-
-        } else if (name.equals(getIdName(Id_getYear))) {
-            double t = date;
-            t = jsJSFunction_getYear(t);
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getFullYear))) {
-            double t = date;
-            t = YearFromTime(LocalTime(t));
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getUTCFullYear))) {
-            double t = date;
-            t = YearFromTime(t);
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getMonth))) {
-            double t = date;
-            t = MonthFromTime(LocalTime(t));
-            return new Double(t);
-                
-        } else if (name.equals(getIdName(Id_getUTCMonth))) {
-            double t = date;
-            t = MonthFromTime(t);
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getDate))) {
-            double t = date;
-            t = DateFromTime(LocalTime(t));
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getUTCDate))) {
-            double t = date;
-            t = DateFromTime(t);
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getDay))) {
-            double t = date;
-            t = WeekDay(LocalTime(t));
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getUTCDay))) {
-            double t = date;
-            t = WeekDay(t);
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getHours))) {
-            double t = date;
-            t = HourFromTime(LocalTime(t));
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getUTCHours))) {
-            double t = date;
-            t = HourFromTime(t);
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getMinutes))) {
-            double t = date;
-            t = MinFromTime(LocalTime(t));
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getUTCMinutes))) {
-            double t = date;
-            t = MinFromTime(t);
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getSeconds))) {
-            double t = date;
-            t = SecFromTime(LocalTime(t));
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getUTCSeconds))) {
-            double t = date;
-            t = SecFromTime(t);
-            return new Double(t);
-                
-        } else if (name.equals(getIdName(Id_getMilliseconds))) {
-            double t = date;
-            t = msFromTime(LocalTime(t));
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getUTCMilliseconds))) {
-            double t = date;
-            t = msFromTime(t);
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_getTimezoneOffset))) {
-            double t = date;
-            t = jsJSFunction_getTimezoneOffset(t);
-            return new Double(t);
-
-        } else if (name.equals(getIdName(Id_setTime))) { 
-            return new Double(this.jsJSFunction_setTime(_toNumber(args, 0)));
-
-        } else if (name.equals(getIdName(Id_setMilliseconds))) { 
-            return new Double(this.
-                               makeTime(args, 1, true));
-
-        } else if (name.equals(getIdName(Id_setUTCMilliseconds))) { 
-            return new Double(this.
-                               makeTime(args, 1, false));
-
-        } else if (name.equals(getIdName(Id_setSeconds))) { 
-            return new Double(this.
-                               makeTime(args, 2, true));
-
-        } else if (name.equals(getIdName(Id_setUTCSeconds))) { 
-            return new Double(this.
-                               makeTime(args, 2, false));
-
-        } else if (name.equals(getIdName(Id_setMinutes))) { 
-            return new Double(this.
-                               makeTime(args, 3, true));
-
-        } else if (name.equals(getIdName(Id_setUTCMinutes))) { 
-            return new Double(this.
-                               makeTime(args, 3, false));
-
-        } else if (name.equals(getIdName(Id_setHours))) { 
-            return new Double(this.
-                               makeTime(args, 4, true));
-
-        } else if (name.equals(getIdName(Id_setUTCHours))) { 
-            return new Double(this.
-                               makeTime(args, 4, false));
-
-        } else if (name.equals(getIdName(Id_setDate))) { 
-            return new Double(this.
-                               makeDate(args, 1, true));
-
-        } else if (name.equals(getIdName(Id_setUTCDate))) { 
-            return new Double(this.
-                               makeDate(args, 1, false));
-
-        } else if (name.equals(getIdName(Id_setMonth))) { 
-            return new Double(this.
-                               makeDate(args, 2, true));
-
-        } else if (name.equals(getIdName(Id_setUTCMonth))) { 
-            return new Double(this.
-                               makeDate(args, 2, false));
-
-        } else if (name.equals(getIdName(Id_setFullYear))) { 
-            return new Double(this.
-                               makeDate(args, 3, true));
-
-        } else if (name.equals(getIdName(Id_setUTCFullYear))) { 
-            return new Double(this.
-                               makeDate(args, 3, false));
-
-        } else if (name.equals(getIdName(Id_setYear))) { 
-            return new Double(this.
-                               jsJSFunction_setYear(_toNumber(args, 0)));
+    public Object callMethod(Object method, Object a0, Object a1, Object a2, Object[] rest, int nargs) {
+        switch(nargs) {
+            case 0: {
+                //#switch(method)
+                case "toString": return date_format(date, FORMATSPEC_FULL);
+                case "toTimeString": return date_format(date, FORMATSPEC_TIME);
+                case "toDateString": return date_format(date, FORMATSPEC_DATE);
+                case "toLocaleString": return toLocaleString(date);
+                case "toLocaleTimeString": return toLocaleTimeString(date);
+                case "toLocaleDateString": return toLocaleDateString(date);
+                case "toUTCString": return toUTCString(date);
+                case "valueOf": return N(this.date);
+                case "getTime": return N(this.date);
+                case "getYear": return N(getYear(date));
+                case "getFullYear": return N(YearFromTime(LocalTime(date)));
+                case "getUTCFullYear": return N(YearFromTime(date));
+                case "getMonth": return N(MonthFromTime(LocalTime(date)));
+                case "getUTCMonth": return N(MonthFromTime(date));
+                case "getDate": return N(DateFromTime(LocalTime(date)));
+                case "getUTCDate": return N(DateFromTime(date));
+                case "getDay": return N(WeekDay(LocalTime(date)));
+                case "getUTCDay": return N(WeekDay(date));
+                case "getHours": return N(HourFromTime(LocalTime(date)));
+                case "getUTCHours": return N(HourFromTime(date));
+                case "getMinutes": return N(MinFromTime(LocalTime(date)));
+                case "getUTCMinutes": return N(MinFromTime(date));
+                case "getSeconds": return N(SecFromTime(LocalTime(date)));
+                case "getUTCSeconds": return N(SecFromTime(date));
+                case "getMilliseconds": return N(msFromTime(LocalTime(date)));
+                case "getUTCMilliseconds": return N(msFromTime(date));
+                case "getTimezoneOffset": return N(getTimezoneOffset(date));
+                //#end
+                return super.callMethod(method, a0, a1, a2, rest, nargs);
+            }
+            case 1: {
+                //#switch(method)
+                case "setTime": return N(this.setTime(toDouble(a0)));
+                case "setYear": return N(this.setYear(toDouble(a0)));
+                //#end
+                // fall through
+            }
+            default: {
+                Object[] args = new Object[nargs];
+                for(int i=0; i<nargs; i++) args[i] = i==0 ? a0 : i==1 ? a1 : i==2 ? a2 : rest[i-3];
+                //#switch(method)
+                case "setMilliseconds": return N(this.makeTime(args, 1, true));
+                case "setUTCMilliseconds": return N(this.makeTime(args, 1, false));
+                case "setSeconds": return N(this.makeTime(args, 2, true));
+                case "setUTCSeconds": return N(this.makeTime(args, 2, false));
+                case "setMinutes": return N(this.makeTime(args, 3, true));
+                case "setUTCMinutes": return N(this.makeTime(args, 3, false));
+                case "setHours": return N(this.makeTime(args, 4, true));
+                case "setUTCHours": return N(this.makeTime(args, 4, false));
+                case "setDate": return N(this.makeDate(args, 1, true));
+                case "setUTCDate": return N(this.makeDate(args, 1, false));
+                case "setMonth": return N(this.makeDate(args, 2, true));
+                case "setUTCMonth": return N(this.makeDate(args, 2, false));
+                case "setFullYear": return N(this.makeDate(args, 3, true));
+                case "setUTCFullYear": return N(this.makeDate(args, 3, false));
+                //#end
+            }
         }
-        return null;
+        return super.callMethod(method, a0, a1, a2, rest, nargs);
+    }
+
+    public Object get(Object key) {
+        //#switch(key)
+        case "toString": return METHOD;
+        case "toTimeString": return METHOD;
+        case "toDateString": return METHOD;
+        case "toLocaleString": return METHOD;
+        case "toLocaleTimeString": return METHOD;
+        case "toLocaleDateString": return METHOD;
+        case "toUTCString": return METHOD;
+        case "valueOf": return METHOD;
+        case "getTime": return METHOD;
+        case "getYear": return METHOD;
+        case "getFullYear": return METHOD;
+        case "getUTCFullYear": return METHOD;
+        case "getMonth": return METHOD;
+        case "getUTCMonth": return METHOD;
+        case "getDate": return METHOD;
+        case "getUTCDate": return METHOD;
+        case "getDay": return METHOD;
+        case "getUTCDay": return METHOD;
+        case "getHours": return METHOD;
+        case "getUTCHours": return METHOD;
+        case "getMinutes": return METHOD;
+        case "getUTCMinutes": return METHOD;
+        case "getSeconds": return METHOD;
+        case "getUTCSeconds": return METHOD;
+        case "getMilliseconds": return METHOD;
+        case "getUTCMilliseconds": return METHOD;
+        case "getTimezoneOffset": return METHOD;
+        case "setTime": return METHOD;
+        case "setYear": return METHOD;
+        case "setMilliseconds": return METHOD;
+        case "setUTCMilliseconds": return METHOD;
+        case "setSeconds": return METHOD;
+        case "setUTCSeconds": return METHOD;
+        case "setMinutes": return METHOD;
+        case "setUTCMinutes": return METHOD;
+        case "setHours": return METHOD;
+        case "setUTCHours": return METHOD;
+        case "setDate": return METHOD;
+        case "setUTCDate": return METHOD;
+        case "setMonth": return METHOD;
+        case "setUTCMonth": return METHOD;
+        case "setFullYear": return METHOD;
+        case "setUTCFullYear": return METHOD;
+        //#end
+        return super.get(key);
     }
 
     /* ECMA helper functions */
@@ -650,7 +562,7 @@ public class JSDate extends JSCallable {
                               array[3], array[4], array[5], array[6]);
         d = TimeClip(d);
         return d;
-        //        return new Double(d);
+        //        return N(d);
     }
 
     /*
@@ -898,7 +810,7 @@ public class JSDate extends JSCallable {
 
     private static String date_format(double t, int format) {
         if (t != t)
-            return jsJSFunction_NaN_date_str;
+            return NaN_date_str;
 
         StringBuffer result = new StringBuffer(60);
         double local = LocalTime(t);
@@ -1051,7 +963,7 @@ public class JSDate extends JSCallable {
     }
 
     /* constants for toString, toUTCString */
-    private static String jsJSFunction_NaN_date_str = "Invalid Date";
+    private static String NaN_date_str = "Invalid Date";
 
     private static String[] days = {
         "Sun","Mon","Tue","Wed","Thu","Fri","Sat"
@@ -1066,13 +978,13 @@ public class JSDate extends JSCallable {
                                           java.text.DateFormat formatter)
     {
         if (t != t)
-            return jsJSFunction_NaN_date_str;
+            return NaN_date_str;
 
         java.util.Date tempdate = new java.util.Date((long) t);
         return formatter.format(tempdate);
     }
 
-    private static String jsJSFunction_toLocaleString(double date) {
+    private static String toLocaleString(double date) {
         if (localeDateTimeFormatter == null)
             localeDateTimeFormatter =
                 DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG);
@@ -1080,21 +992,21 @@ public class JSDate extends JSCallable {
         return toLocale_helper(date, localeDateTimeFormatter);
     }
 
-    private static String jsJSFunction_toLocaleTimeString(double date) {
+    private static String toLocaleTimeString(double date) {
         if (localeTimeFormatter == null)
             localeTimeFormatter = DateFormat.getTimeInstance(DateFormat.LONG);
 
         return toLocale_helper(date, localeTimeFormatter);
     }
 
-    private static String jsJSFunction_toLocaleDateString(double date) {
+    private static String toLocaleDateString(double date) {
         if (localeDateFormatter == null)
             localeDateFormatter = DateFormat.getDateInstance(DateFormat.LONG);
 
         return toLocale_helper(date, localeDateFormatter);
     }
 
-    private static String jsJSFunction_toUTCString(double date) {
+    private static String toUTCString(double date) {
         StringBuffer result = new StringBuffer(60);
 
         String dateStr = Integer.toString(DateFromTime(date));
@@ -1140,17 +1052,17 @@ public class JSDate extends JSCallable {
         return result.toString();
     }
 
-    private static double jsJSFunction_getYear(double date) {
+    private static double getYear(double date) {
         int result = YearFromTime(LocalTime(date));
         result -= 1900;
         return result;
     }
 
-    private static double jsJSFunction_getTimezoneOffset(double date) {
+    private static double getTimezoneOffset(double date) {
         return (date - LocalTime(date)) / msPerMinute;
     }
 
-    public double jsJSFunction_setTime(double time) {
+    public double setTime(double time) {
         this.date = TimeClip(time);
         return this.date;
     }
@@ -1231,11 +1143,11 @@ public class JSDate extends JSCallable {
         return date;
     }
 
-    private double jsJSFunction_setHours(Object[] args) {
+    private double setHours(Object[] args) {
         return makeTime(args, 4, true);
     }
 
-    private double jsJSFunction_setUTCHours(Object[] args) {
+    private double setUTCHours(Object[] args) {
         return makeTime(args, 4, false);
     }
 
@@ -1308,7 +1220,7 @@ public class JSDate extends JSCallable {
         return date;
     }
 
-    private double jsJSFunction_setYear(double year) {
+    private double setYear(double year) {
         double day, result;
         if (year != year || Double.isInfinite(year)) {
             this.date = Double.NaN;
@@ -1332,228 +1244,9 @@ public class JSDate extends JSCallable {
         return this.date;
     }
 
-    protected String getIdName(int id) {
-            switch (id) {
-                case ConstructorId_UTC:     return "UTC";
-                case ConstructorId_parse:   return "parse";
-                case Id_constructor:        return "constructor"; 
-                case Id_toString:           return "toString";
-                case Id_toTimeString:       return "toTimeString";
-                case Id_toDateString:       return "toDateString";
-                case Id_toLocaleString:     return "toLocaleString";
-                case Id_toLocaleTimeString: return "toLocaleTimeString";
-                case Id_toLocaleDateString: return "toLocaleDateString";
-                case Id_toUTCString:        return "toUTCString";
-                case Id_valueOf:            return "valueOf";
-                case Id_getTime:            return "getTime";
-                case Id_getYear:            return "getYear";
-                case Id_getFullYear:        return "getFullYear";
-                case Id_getUTCFullYear:     return "getUTCFullYear";
-                case Id_getMonth:           return "getMonth";
-                case Id_getUTCMonth:        return "getUTCMonth";
-                case Id_getDate:            return "getDate";
-                case Id_getUTCDate:         return "getUTCDate";
-                case Id_getDay:             return "getDay";
-                case Id_getUTCDay:          return "getUTCDay";
-                case Id_getHours:           return "getHours";
-                case Id_getUTCHours:        return "getUTCHours";
-                case Id_getMinutes:         return "getMinutes";
-                case Id_getUTCMinutes:      return "getUTCMinutes";
-                case Id_getSeconds:         return "getSeconds";
-                case Id_getUTCSeconds:      return "getUTCSeconds";
-                case Id_getMilliseconds:    return "getMilliseconds";
-                case Id_getUTCMilliseconds: return "getUTCMilliseconds";
-                case Id_getTimezoneOffset:  return "getTimezoneOffset";
-                case Id_setTime:            return "setTime";
-                case Id_setMilliseconds:    return "setMilliseconds";
-                case Id_setUTCMilliseconds: return "setUTCMilliseconds";
-                case Id_setSeconds:         return "setSeconds";
-                case Id_setUTCSeconds:      return "setUTCSeconds";
-                case Id_setMinutes:         return "setMinutes";
-                case Id_setUTCMinutes:      return "setUTCMinutes";
-                case Id_setHours:           return "setHours";
-                case Id_setUTCHours:        return "setUTCHours";
-                case Id_setDate:            return "setDate";
-                case Id_setUTCDate:         return "setUTCDate";
-                case Id_setMonth:           return "setMonth";
-                case Id_setUTCMonth:        return "setUTCMonth";
-                case Id_setFullYear:        return "setFullYear";
-                case Id_setUTCFullYear:     return "setUTCFullYear";
-                case Id_setYear:            return "setYear";
-            }
-        return null;        
-    }
-
-// #string_id_map#
-
-    protected int mapNameToId(String s) {
-        int id;
-// #generated# Last update: 2001-04-22 23:46:59 CEST
-        L0: { id = 0; String X = null; int c;
-            L: switch (s.length()) {
-            case 6: X="getDay";id=Id_getDay; break L;
-            case 7: switch (s.charAt(3)) {
-                case 'D': c=s.charAt(0);
-                    if (c=='g') { X="getDate";id=Id_getDate; }
-                    else if (c=='s') { X="setDate";id=Id_setDate; }
-                    break L;
-                case 'T': c=s.charAt(0);
-                    if (c=='g') { X="getTime";id=Id_getTime; }
-                    else if (c=='s') { X="setTime";id=Id_setTime; }
-                    break L;
-                case 'Y': c=s.charAt(0);
-                    if (c=='g') { X="getYear";id=Id_getYear; }
-                    else if (c=='s') { X="setYear";id=Id_setYear; }
-                    break L;
-                case 'u': X="valueOf";id=Id_valueOf; break L;
-                } break L;
-            case 8: c=s.charAt(0);
-                if (c=='g') {
-                    c=s.charAt(7);
-                    if (c=='h') { X="getMonth";id=Id_getMonth; }
-                    else if (c=='s') { X="getHours";id=Id_getHours; }
-                }
-                else if (c=='s') {
-                    c=s.charAt(7);
-                    if (c=='h') { X="setMonth";id=Id_setMonth; }
-                    else if (c=='s') { X="setHours";id=Id_setHours; }
-                }
-                else if (c=='t') { X="toString";id=Id_toString; }
-                break L;
-            case 9: X="getUTCDay";id=Id_getUTCDay; break L;
-            case 10: c=s.charAt(3);
-                if (c=='M') {
-                    c=s.charAt(0);
-                    if (c=='g') { X="getMinutes";id=Id_getMinutes; }
-                    else if (c=='s') { X="setMinutes";id=Id_setMinutes; }
-                }
-                else if (c=='S') {
-                    c=s.charAt(0);
-                    if (c=='g') { X="getSeconds";id=Id_getSeconds; }
-                    else if (c=='s') { X="setSeconds";id=Id_setSeconds; }
-                }
-                else if (c=='U') {
-                    c=s.charAt(0);
-                    if (c=='g') { X="getUTCDate";id=Id_getUTCDate; }
-                    else if (c=='s') { X="setUTCDate";id=Id_setUTCDate; }
-                }
-                break L;
-            case 11: switch (s.charAt(3)) {
-                case 'F': c=s.charAt(0);
-                    if (c=='g') { X="getFullYear";id=Id_getFullYear; }
-                    else if (c=='s') { X="setFullYear";id=Id_setFullYear; }
-                    break L;
-                case 'M': X="toGMTString";id=Id_toGMTString; break L;
-                case 'T': X="toUTCString";id=Id_toUTCString; break L;
-                case 'U': c=s.charAt(0);
-                    if (c=='g') {
-                        c=s.charAt(9);
-                        if (c=='r') { X="getUTCHours";id=Id_getUTCHours; }
-                        else if (c=='t') { X="getUTCMonth";id=Id_getUTCMonth; }
-                    }
-                    else if (c=='s') {
-                        c=s.charAt(9);
-                        if (c=='r') { X="setUTCHours";id=Id_setUTCHours; }
-                        else if (c=='t') { X="setUTCMonth";id=Id_setUTCMonth; }
-                    }
-                    break L;
-                case 's': X="constructor";id=Id_constructor; break L;
-                } break L;
-            case 12: c=s.charAt(2);
-                if (c=='D') { X="toDateString";id=Id_toDateString; }
-                else if (c=='T') { X="toTimeString";id=Id_toTimeString; }
-                break L;
-            case 13: c=s.charAt(0);
-                if (c=='g') {
-                    c=s.charAt(6);
-                    if (c=='M') { X="getUTCMinutes";id=Id_getUTCMinutes; }
-                    else if (c=='S') { X="getUTCSeconds";id=Id_getUTCSeconds; }
-                }
-                else if (c=='s') {
-                    c=s.charAt(6);
-                    if (c=='M') { X="setUTCMinutes";id=Id_setUTCMinutes; }
-                    else if (c=='S') { X="setUTCSeconds";id=Id_setUTCSeconds; }
-                }
-                break L;
-            case 14: c=s.charAt(0);
-                if (c=='g') { X="getUTCFullYear";id=Id_getUTCFullYear; }
-                else if (c=='s') { X="setUTCFullYear";id=Id_setUTCFullYear; }
-                else if (c=='t') { X="toLocaleString";id=Id_toLocaleString; }
-                break L;
-            case 15: c=s.charAt(0);
-                if (c=='g') { X="getMilliseconds";id=Id_getMilliseconds; }
-                else if (c=='s') { X="setMilliseconds";id=Id_setMilliseconds; }
-                break L;
-            case 17: X="getTimezoneOffset";id=Id_getTimezoneOffset; break L;
-            case 18: c=s.charAt(0);
-                if (c=='g') { X="getUTCMilliseconds";id=Id_getUTCMilliseconds; }
-                else if (c=='s') { X="setUTCMilliseconds";id=Id_setUTCMilliseconds; }
-                else if (c=='t') {
-                    c=s.charAt(8);
-                    if (c=='D') { X="toLocaleDateString";id=Id_toLocaleDateString; }
-                    else if (c=='T') { X="toLocaleTimeString";id=Id_toLocaleTimeString; }
-                }
-                break L;
-            }
-            if (X!=null && X!=s && !X.equals(s)) id = 0;
-        }
-// #/generated#
-        return id;
-    }
 
-    private static final int
-        ConstructorId_UTC       = -2,
-        ConstructorId_parse     = -1,
-
-        Id_constructor          =  1,
-        Id_toString             =  2,
-        Id_toTimeString         =  3,
-        Id_toDateString         =  4,
-        Id_toLocaleString       =  5,
-        Id_toLocaleTimeString   =  6,
-        Id_toLocaleDateString   =  7,
-        Id_toUTCString          =  8,
-        Id_valueOf              =  9,
-        Id_getTime              = 10,
-        Id_getYear              = 11,
-        Id_getFullYear          = 12,
-        Id_getUTCFullYear       = 13,
-        Id_getMonth             = 14,
-        Id_getUTCMonth          = 15,
-        Id_getDate              = 16,
-        Id_getUTCDate           = 17,
-        Id_getDay               = 18,
-        Id_getUTCDay            = 19,
-        Id_getHours             = 20,
-        Id_getUTCHours          = 21,
-        Id_getMinutes           = 22,
-        Id_getUTCMinutes        = 23,
-        Id_getSeconds           = 24,
-        Id_getUTCSeconds        = 25,
-        Id_getMilliseconds      = 26,
-        Id_getUTCMilliseconds   = 27,
-        Id_getTimezoneOffset    = 28,
-        Id_setTime              = 29,
-        Id_setMilliseconds      = 30,
-        Id_setUTCMilliseconds   = 31,
-        Id_setSeconds           = 32,
-        Id_setUTCSeconds        = 33,
-        Id_setMinutes           = 34,
-        Id_setUTCMinutes        = 35,
-        Id_setHours             = 36,
-        Id_setUTCHours          = 37,
-        Id_setDate              = 38,
-        Id_setUTCDate           = 39,
-        Id_setMonth             = 40,
-        Id_setUTCMonth          = 41,
-        Id_setFullYear          = 42,
-        Id_setUTCFullYear       = 43,
-        Id_setYear              = 44,
-
-        MAX_PROTOTYPE_ID        = 44;
-
-    private static final int
-        Id_toGMTString  =  Id_toUTCString; // Alias, see Ecma B.2.6
+    //    private static final int
+    //        Id_toGMTString  =  Id_toUTCString; // Alias, see Ecma B.2.6
 // #/string_id_map#
 
     /* cached values */