28 import static java.lang.Double.NaN; |
28 import static java.lang.Double.NaN; |
29 import static java.lang.Double.isInfinite; |
29 import static java.lang.Double.isInfinite; |
30 import static java.lang.Double.isNaN; |
30 import static java.lang.Double.isNaN; |
31 import static jdk.nashorn.internal.runtime.ECMAErrors.rangeError; |
31 import static jdk.nashorn.internal.runtime.ECMAErrors.rangeError; |
32 import static jdk.nashorn.internal.runtime.ECMAErrors.typeError; |
32 import static jdk.nashorn.internal.runtime.ECMAErrors.typeError; |
|
33 |
33 import java.util.Locale; |
34 import java.util.Locale; |
34 import java.util.TimeZone; |
35 import java.util.TimeZone; |
35 import java.util.concurrent.Callable; |
36 import java.util.concurrent.Callable; |
36 import jdk.nashorn.internal.objects.annotations.Attribute; |
37 import jdk.nashorn.internal.objects.annotations.Attribute; |
37 import jdk.nashorn.internal.objects.annotations.Constructor; |
38 import jdk.nashorn.internal.objects.annotations.Constructor; |
38 import jdk.nashorn.internal.objects.annotations.Function; |
39 import jdk.nashorn.internal.objects.annotations.Function; |
39 import jdk.nashorn.internal.objects.annotations.ScriptClass; |
40 import jdk.nashorn.internal.objects.annotations.ScriptClass; |
40 import jdk.nashorn.internal.objects.annotations.SpecializedFunction; |
41 import jdk.nashorn.internal.objects.annotations.SpecializedFunction; |
41 import jdk.nashorn.internal.objects.annotations.Where; |
42 import jdk.nashorn.internal.objects.annotations.Where; |
42 import jdk.nashorn.internal.parser.DateParser; |
43 import jdk.nashorn.internal.parser.DateParser; |
43 import jdk.nashorn.internal.runtime.ConsString; |
|
44 import jdk.nashorn.internal.runtime.JSType; |
44 import jdk.nashorn.internal.runtime.JSType; |
45 import jdk.nashorn.internal.runtime.PropertyMap; |
45 import jdk.nashorn.internal.runtime.PropertyMap; |
46 import jdk.nashorn.internal.runtime.ScriptEnvironment; |
46 import jdk.nashorn.internal.runtime.ScriptEnvironment; |
47 import jdk.nashorn.internal.runtime.ScriptObject; |
47 import jdk.nashorn.internal.runtime.ScriptObject; |
48 import jdk.nashorn.internal.runtime.ScriptRuntime; |
48 import jdk.nashorn.internal.runtime.ScriptRuntime; |
181 break; |
181 break; |
182 |
182 |
183 case 1: |
183 case 1: |
184 double num; |
184 double num; |
185 final Object arg = JSType.toPrimitive(args[0]); |
185 final Object arg = JSType.toPrimitive(args[0]); |
186 if (arg instanceof String || arg instanceof ConsString) { |
186 if (JSType.isString(arg)) { |
187 num = parseDateString(arg.toString()); |
187 num = parseDateString(arg.toString()); |
188 } else { |
188 } else { |
189 num = timeClip(JSType.toNumber(args[0])); |
189 num = timeClip(JSType.toNumber(args[0])); |
190 } |
190 } |
191 result = new NativeDate(num); |
191 result = new NativeDate(num); |