Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(210)

Side by Side Diff: sdk/lib/core/duration.dart

Issue 2754013002: Format all dart: library files (Closed)
Patch Set: Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 part of dart.core; 5 part of dart.core;
6 6
7 /** 7 /**
8 * A span of time, such as 27 days, 4 hours, 12 minutes, and 3 seconds. 8 * A span of time, such as 27 days, 4 hours, 12 minutes, and 3 seconds.
9 * 9 *
10 * A `Duration` represents a difference from one point in time to another. The 10 * A `Duration` represents a difference from one point in time to another. The
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 static const int SECONDS_PER_MINUTE = 60; 56 static const int SECONDS_PER_MINUTE = 60;
57 static const int MINUTES_PER_HOUR = 60; 57 static const int MINUTES_PER_HOUR = 60;
58 static const int HOURS_PER_DAY = 24; 58 static const int HOURS_PER_DAY = 24;
59 59
60 static const int MICROSECONDS_PER_SECOND = 60 static const int MICROSECONDS_PER_SECOND =
61 MICROSECONDS_PER_MILLISECOND * MILLISECONDS_PER_SECOND; 61 MICROSECONDS_PER_MILLISECOND * MILLISECONDS_PER_SECOND;
62 static const int MICROSECONDS_PER_MINUTE = 62 static const int MICROSECONDS_PER_MINUTE =
63 MICROSECONDS_PER_SECOND * SECONDS_PER_MINUTE; 63 MICROSECONDS_PER_SECOND * SECONDS_PER_MINUTE;
64 static const int MICROSECONDS_PER_HOUR = 64 static const int MICROSECONDS_PER_HOUR =
65 MICROSECONDS_PER_MINUTE * MINUTES_PER_HOUR; 65 MICROSECONDS_PER_MINUTE * MINUTES_PER_HOUR;
66 static const int MICROSECONDS_PER_DAY = 66 static const int MICROSECONDS_PER_DAY = MICROSECONDS_PER_HOUR * HOURS_PER_DAY;
67 MICROSECONDS_PER_HOUR * HOURS_PER_DAY;
68
69 67
70 static const int MILLISECONDS_PER_MINUTE = 68 static const int MILLISECONDS_PER_MINUTE =
71 MILLISECONDS_PER_SECOND * SECONDS_PER_MINUTE; 69 MILLISECONDS_PER_SECOND * SECONDS_PER_MINUTE;
72 static const int MILLISECONDS_PER_HOUR = 70 static const int MILLISECONDS_PER_HOUR =
73 MILLISECONDS_PER_MINUTE * MINUTES_PER_HOUR; 71 MILLISECONDS_PER_MINUTE * MINUTES_PER_HOUR;
74 static const int MILLISECONDS_PER_DAY = 72 static const int MILLISECONDS_PER_DAY = MILLISECONDS_PER_HOUR * HOURS_PER_DAY;
75 MILLISECONDS_PER_HOUR * HOURS_PER_DAY;
76 73
77 static const int SECONDS_PER_HOUR = SECONDS_PER_MINUTE * MINUTES_PER_HOUR; 74 static const int SECONDS_PER_HOUR = SECONDS_PER_MINUTE * MINUTES_PER_HOUR;
78 static const int SECONDS_PER_DAY = SECONDS_PER_HOUR * HOURS_PER_DAY; 75 static const int SECONDS_PER_DAY = SECONDS_PER_HOUR * HOURS_PER_DAY;
79 76
80 static const int MINUTES_PER_DAY = MINUTES_PER_HOUR * HOURS_PER_DAY; 77 static const int MINUTES_PER_DAY = MINUTES_PER_HOUR * HOURS_PER_DAY;
81 78
82 static const Duration ZERO = const Duration(seconds: 0); 79 static const Duration ZERO = const Duration(seconds: 0);
83 80
84 /* 81 /*
85 * The value of this Duration object in microseconds. 82 * The value of this Duration object in microseconds.
86 */ 83 */
87 final int _duration; 84 final int _duration;
88 85
89 /** 86 /**
90 * Creates a new Duration object whose value 87 * Creates a new Duration object whose value
91 * is the sum of all individual parts. 88 * is the sum of all individual parts.
92 * 89 *
93 * Individual parts can be larger than the next-bigger unit. 90 * Individual parts can be larger than the next-bigger unit.
94 * For example, [hours] can be greater than 23. 91 * For example, [hours] can be greater than 23.
95 * 92 *
96 * All individual parts are allowed to be negative. 93 * All individual parts are allowed to be negative.
97 * All arguments are 0 by default. 94 * All arguments are 0 by default.
98 */ 95 */
99 const Duration({int days: 0, 96 const Duration(
100 int hours: 0, 97 {int days: 0,
101 int minutes: 0, 98 int hours: 0,
102 int seconds: 0, 99 int minutes: 0,
103 int milliseconds: 0, 100 int seconds: 0,
104 int microseconds: 0}) 101 int milliseconds: 0,
105 : this._microseconds( 102 int microseconds: 0})
106 MICROSECONDS_PER_DAY * days + 103 : this._microseconds(MICROSECONDS_PER_DAY * days +
107 MICROSECONDS_PER_HOUR * hours + 104 MICROSECONDS_PER_HOUR * hours +
108 MICROSECONDS_PER_MINUTE * minutes + 105 MICROSECONDS_PER_MINUTE * minutes +
109 MICROSECONDS_PER_SECOND * seconds + 106 MICROSECONDS_PER_SECOND * seconds +
110 MICROSECONDS_PER_MILLISECOND * milliseconds + 107 MICROSECONDS_PER_MILLISECOND * milliseconds +
111 microseconds); 108 microseconds);
112 109
113 // Fast path internal direct constructor to avoids the optional arguments and 110 // Fast path internal direct constructor to avoids the optional arguments and
114 // [_microseconds] recomputation. 111 // [_microseconds] recomputation.
115 const Duration._microseconds(this._duration); 112 const Duration._microseconds(this._duration);
116 113
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 210
214 /** 211 /**
215 * Returns number of whole microseconds spanned by this Duration. 212 * Returns number of whole microseconds spanned by this Duration.
216 */ 213 */
217 int get inMicroseconds => _duration; 214 int get inMicroseconds => _duration;
218 215
219 /** 216 /**
220 * Returns `true` if this Duration is the same object as [other]. 217 * Returns `true` if this Duration is the same object as [other].
221 */ 218 */
222 bool operator ==(other) { 219 bool operator ==(other) {
223 if (other is !Duration) return false; 220 if (other is! Duration) return false;
224 return _duration == other._duration; 221 return _duration == other._duration;
225 } 222 }
226 223
227 int get hashCode => _duration.hashCode; 224 int get hashCode => _duration.hashCode;
228 225
229 /** 226 /**
230 * Compares this Duration to [other], returning zero if the values are equal. 227 * Compares this Duration to [other], returning zero if the values are equal.
231 * 228 *
232 * Returns a negative integer if this `Duration` is shorter than 229 * Returns a negative integer if this `Duration` is shorter than
233 * [other], or a positive integer if it is longer. 230 * [other], or a positive integer if it is longer.
(...skipping 16 matching lines...) Expand all
250 */ 247 */
251 String toString() { 248 String toString() {
252 String sixDigits(int n) { 249 String sixDigits(int n) {
253 if (n >= 100000) return "$n"; 250 if (n >= 100000) return "$n";
254 if (n >= 10000) return "0$n"; 251 if (n >= 10000) return "0$n";
255 if (n >= 1000) return "00$n"; 252 if (n >= 1000) return "00$n";
256 if (n >= 100) return "000$n"; 253 if (n >= 100) return "000$n";
257 if (n >= 10) return "0000$n"; 254 if (n >= 10) return "0000$n";
258 return "00000$n"; 255 return "00000$n";
259 } 256 }
257
260 String twoDigits(int n) { 258 String twoDigits(int n) {
261 if (n >= 10) return "$n"; 259 if (n >= 10) return "$n";
262 return "0$n"; 260 return "0$n";
263 } 261 }
264 262
265 if (inMicroseconds < 0) { 263 if (inMicroseconds < 0) {
266 return "-${-this}"; 264 return "-${-this}";
267 } 265 }
268 String twoDigitMinutes = twoDigits(inMinutes.remainder(MINUTES_PER_HOUR)); 266 String twoDigitMinutes = twoDigits(inMinutes.remainder(MINUTES_PER_HOUR));
269 String twoDigitSeconds = twoDigits(inSeconds.remainder(SECONDS_PER_MINUTE)); 267 String twoDigitSeconds = twoDigits(inSeconds.remainder(SECONDS_PER_MINUTE));
(...skipping 21 matching lines...) Expand all
291 289
292 /** 290 /**
293 * Returns a new `Duration` representing this `Duration` negated. 291 * Returns a new `Duration` representing this `Duration` negated.
294 * 292 *
295 * The returned `Duration` has the same length as this one, but will have the 293 * The returned `Duration` has the same length as this one, but will have the
296 * opposite sign of this one. 294 * opposite sign of this one.
297 */ 295 */
298 // Using subtraction helps dart2js avoid negative zeros. 296 // Using subtraction helps dart2js avoid negative zeros.
299 Duration operator -() => new Duration._microseconds(0 - _duration); 297 Duration operator -() => new Duration._microseconds(0 - _duration);
300 } 298 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698