OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 // TODO(jmesserly): the native class should be the real JS Date. | 5 // TODO(jmesserly): the native class should be the real JS Date. |
6 // TODO(jimhug): Making the date value non-lazy might be a good path there. | 6 // TODO(jimhug): Making the date value non-lazy might be a good path there. |
7 class DateImplementation implements Date { | 7 class DateImplementation implements Date { |
8 final int value; | 8 final int value; |
9 final TimeZone timeZone; | 9 final TimeZone timeZone; |
10 | 10 |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 return value; | 120 return value; |
121 } | 121 } |
122 | 122 |
123 Date changeTimeZone(TimeZone targetTimeZone) { | 123 Date changeTimeZone(TimeZone targetTimeZone) { |
124 if (targetTimeZone == null) { | 124 if (targetTimeZone == null) { |
125 targetTimeZone = new TimeZoneImplementation.local(); | 125 targetTimeZone = new TimeZoneImplementation.local(); |
126 } | 126 } |
127 return new Date.fromEpoch(value, targetTimeZone); | 127 return new Date.fromEpoch(value, targetTimeZone); |
128 } | 128 } |
129 | 129 |
| 130 String get timeZoneName() { throw "Unimplemented"; } |
| 131 Duration get timeZoneOffset() { throw "Unimplemented"; } |
| 132 |
130 int get year() native | 133 int get year() native |
131 '''return this.isUtc() ? this._asJs().getUTCFullYear() : | 134 '''return this.isUtc() ? this._asJs().getUTCFullYear() : |
132 this._asJs().getFullYear();''' { | 135 this._asJs().getFullYear();''' { |
133 isUtc(); | 136 isUtc(); |
134 _asJs(); | 137 _asJs(); |
135 } | 138 } |
136 | 139 |
137 int get month() native | 140 int get month() native |
138 '''return this.isUtc() ? this._asJs().getUTCMonth() + 1 : | 141 '''return this.isUtc() ? this._asJs().getUTCMonth() + 1 : |
139 this._asJs().getMonth() + 1;''' { | 142 this._asJs().getMonth() + 1;''' { |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
283 return isUtc == other.isUtc; | 286 return isUtc == other.isUtc; |
284 } | 287 } |
285 | 288 |
286 String toString() { | 289 String toString() { |
287 if (isUtc) return "TimeZone (UTC)"; | 290 if (isUtc) return "TimeZone (UTC)"; |
288 return "TimeZone (Local)"; | 291 return "TimeZone (Local)"; |
289 } | 292 } |
290 | 293 |
291 final bool isUtc; | 294 final bool isUtc; |
292 } | 295 } |
OLD | NEW |