move static function references to Script.java
[org.ibex.js.git] / src / org / ibex / js / JSDate.java
index 203fdc5..b90da68 100644 (file)
@@ -61,62 +61,62 @@ public class JSDate extends JS.Immutable {
     public JS call(JS method, JS[] args) throws JSExn {
         switch(args.length) {
             case 0: {
-                //#switch(JS.toString(method))
-                case "toString": return JS.S(date_format(date, FORMATSPEC_FULL));
-                case "toTimeString": return JS.S(date_format(date, FORMATSPEC_TIME));
-                case "toDateString": return JS.S(date_format(date, FORMATSPEC_DATE));
-                case "toLocaleString": return JS.S(toLocaleString(date));
-                case "toLocaleTimeString": return JS.S(toLocaleTimeString(date));
-                case "toLocaleDateString": return JS.S(toLocaleDateString(date));
-                case "toUTCString": return JS.S(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));
+                //#switch(Script.toString(method))
+                case "toString": return Script.S(date_format(date, FORMATSPEC_FULL));
+                case "toTimeString": return Script.S(date_format(date, FORMATSPEC_TIME));
+                case "toDateString": return Script.S(date_format(date, FORMATSPEC_DATE));
+                case "toLocaleString": return Script.S(toLocaleString(date));
+                case "toLocaleTimeString": return Script.S(toLocaleTimeString(date));
+                case "toLocaleDateString": return Script.S(toLocaleDateString(date));
+                case "toUTCString": return Script.S(toUTCString(date));
+                case "valueOf": return Script.N(this.date);
+                case "getTime": return Script.N(this.date);
+                case "getYear": return Script.N(getYear(date));
+                case "getFullYear": return Script.N(YearFromTime(LocalTime(date)));
+                case "getUTCFullYear": return Script.N(YearFromTime(date));
+                case "getMonth": return Script.N(MonthFromTime(LocalTime(date)));
+                case "getUTCMonth": return Script.N(MonthFromTime(date));
+                case "getDate": return Script.N(DateFromTime(LocalTime(date)));
+                case "getUTCDate": return Script.N(DateFromTime(date));
+                case "getDay": return Script.N(WeekDay(LocalTime(date)));
+                case "getUTCDay": return Script.N(WeekDay(date));
+                case "getHours": return Script.N(HourFromTime(LocalTime(date)));
+                case "getUTCHours": return Script.N(HourFromTime(date));
+                case "getMinutes": return Script.N(MinFromTime(LocalTime(date)));
+                case "getUTCMinutes": return Script.N(MinFromTime(date));
+                case "getSeconds": return Script.N(SecFromTime(LocalTime(date)));
+                case "getUTCSeconds": return Script.N(SecFromTime(date));
+                case "getMilliseconds": return Script.N(msFromTime(LocalTime(date)));
+                case "getUTCMilliseconds": return Script.N(msFromTime(date));
+                case "getTimezoneOffset": return Script.N(getTimezoneOffset(date));
                 //#end
                 return super.call(method, args);
             }
             case 1: {
-                //#switch(JS.toString(method))
-                case "setTime": return N(this.setTime(toDouble(a0)));
-                case "setYear": return N(this.setYear(toDouble(a0)));
+                //#switch(Script.toString(method))
+                case "setTime": return Script.N(this.setTime(Script.toDouble(args[0])));
+                case "setYear": return Script.N(this.setYear(Script.toDouble(args[0])));
                 //#end
                 // fall through
             }
             default: {
                 JS[] args = new JS[nargs];
                 for(int i=0; i<nargs; i++) args[i] = i==0 ? a0 : i==1 ? a1 : i==2 ? a2 : rest[i-3];
-                //#switch(JS.toString(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));
+                //#switch(Script.toString(method))
+                case "setMilliseconds": return Script.N(this.makeTime(args, 1, true));
+                case "setUTCMilliseconds": return Script.N(this.makeTime(args, 1, false));
+                case "setSeconds": return Script.N(this.makeTime(args, 2, true));
+                case "setUTCSeconds": return Script.N(this.makeTime(args, 2, false));
+                case "setMinutes": return Script.N(this.makeTime(args, 3, true));
+                case "setUTCMinutes": return Script.N(this.makeTime(args, 3, false));
+                case "setHours": return Script.N(this.makeTime(args, 4, true));
+                case "setUTCHours": return Script.N(this.makeTime(args, 4, false));
+                case "setDate": return Script.N(this.makeDate(args, 1, true));
+                case "setUTCDate": return Script.N(this.makeDate(args, 1, false));
+                case "setMonth": return Script.N(this.makeDate(args, 2, true));
+                case "setUTCMonth": return Script.N(this.makeDate(args, 2, false));
+                case "setFullYear": return Script.N(this.makeDate(args, 3, true));
+                case "setUTCFullYear": return Script.N(this.makeDate(args, 3, false));
                 //#end
             }
         }
@@ -124,7 +124,7 @@ public class JSDate extends JS.Immutable {
     }
 
     public JS get(JS key) throws JSExn {
-        //#switch(JS.toString(key))
+        //#switch(Script.toString(key))
         case "toString": return METHOD;
         case "toTimeString": return METHOD;
         case "toDateString": return METHOD;
@@ -540,7 +540,7 @@ public class JSDate extends JS.Immutable {
                 if (d != d || Double.isInfinite(d)) {
                     return Double.NaN;
                 }
-                array[loop] = toDouble(args[loop]);
+                array[loop] = Script.toDouble(args[loop]);
             } else {
                 array[loop] = 0;
             }
@@ -559,7 +559,7 @@ public class JSDate extends JS.Immutable {
                               array[3], array[4], array[5], array[6]);
         d = TimeClip(d);
         return d;
-        //        return N(d);
+        //        return Script.N(d);
     }
 
     /*
@@ -889,9 +889,8 @@ public class JSDate extends JS.Immutable {
         return result.toString();
     }
 
-    private static double _toNumber(JS o) throws JSExn { return JS.toDouble(o); }
-    private static double _toNumber(JS[] o, int index) throws JSExn { return JS.toDouble(o[index]); }
-    private static double toDouble(double d) { return d; }
+    private static double _toNumber(JS o) throws JSExn { return Script.toDouble(o); }
+    private static double _toNumber(JS[] o, int index) throws JSExn { return Script.toDouble(o[index]); }
 
     public JSDate(JS[] args) throws JSExn {
 
@@ -903,8 +902,8 @@ public class JSDate extends JS.Immutable {
             }
             case 1: {
                 double date;
-                if(isString(a0))
-                    date = date_parseString(JS.toString(a0));
+                if(Script.isString(a0))
+                    date = date_parseString(Script.toString(a0));
                 else
                     date = _toNumber(args[0]);
                 obj.date = TimeClip(date);
@@ -1084,7 +1083,6 @@ public class JSDate extends JS.Immutable {
                 this.date = Double.NaN;
                 return this.date;
             }
-            conv[i] = toDouble(conv[i]);
         }
 
         if (local)
@@ -1155,7 +1153,6 @@ public class JSDate extends JS.Immutable {
                 this.date = Double.NaN;
                 return this.date;
             }
-            conv[i] = toDouble(conv[i]);
         }
 
         /* return NaN if date is NaN and we're not setting the year,