OLD | NEW |
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 | |
3 // BSD-style license that can be found in the LICENSE file. | |
4 | |
5 // Dart core library. | |
6 | |
7 /** | |
8 * A [Duration] represents a time span. A duration can be negative. | |
9 */ | |
10 interface Duration extends Comparable factory DurationImplementation { | 1 interface Duration extends Comparable factory DurationImplementation { |
11 /** | |
12 * The duration is the sum of all individual parts. This means that individual | |
13 * parts don't need to be less than the next-bigger unit. For example [hours] | |
14 * is allowed to have a value greater than 23. | |
15 * | |
16 * All individual parts are allowed to be negative. | |
17 * All arguments are by default 0. | |
18 */ | |
19 const Duration([int days, int hours, int minutes, int seconds, | 2 const Duration([int days, int hours, int minutes, int seconds, |
20 int milliseconds]); | 3 int milliseconds]); |
21 | |
22 /** | |
23 * Returns this [Duration] in days. Incomplete days are discarded. | |
24 */ | |
25 final int inDays; | 4 final int inDays; |
26 | |
27 /** | |
28 * Returns this [Duration] in days. Incomplete hours are discarded. | |
29 * The returned value can be greater than 23. | |
30 */ | |
31 final int inHours; | 5 final int inHours; |
32 | |
33 /** | |
34 * Returns this [Duration] in minutes. Incomplete minutes are discarded. | |
35 * The returned value can be greater than 59. | |
36 */ | |
37 final int inMinutes; | 6 final int inMinutes; |
38 | |
39 /** | |
40 * Returns this [Duration] in seconds. Incomplete seconds are discarded. | |
41 * The returned value can be greater than 59. | |
42 */ | |
43 final int inSeconds; | 7 final int inSeconds; |
44 | |
45 /** | |
46 * Returns this [Duration] in milliseconds. | |
47 */ | |
48 final int inMilliseconds; | 8 final int inMilliseconds; |
49 | |
50 static final int MILLISECONDS_PER_SECOND = 1000; | 9 static final int MILLISECONDS_PER_SECOND = 1000; |
51 static final int SECONDS_PER_MINUTE = 60; | 10 static final int SECONDS_PER_MINUTE = 60; |
52 static final int MINUTES_PER_HOUR = 60; | 11 static final int MINUTES_PER_HOUR = 60; |
53 static final int HOURS_PER_DAY = 24; | 12 static final int HOURS_PER_DAY = 24; |
54 | |
55 static final int MILLISECONDS_PER_MINUTE = | 13 static final int MILLISECONDS_PER_MINUTE = |
56 MILLISECONDS_PER_SECOND * SECONDS_PER_MINUTE; | 14 MILLISECONDS_PER_SECOND * SECONDS_PER_MINUTE; |
57 static final int MILLISECONDS_PER_HOUR = | 15 static final int MILLISECONDS_PER_HOUR = |
58 MILLISECONDS_PER_MINUTE * MINUTES_PER_HOUR; | 16 MILLISECONDS_PER_MINUTE * MINUTES_PER_HOUR; |
59 static final int MILLISECONDS_PER_DAY = | 17 static final int MILLISECONDS_PER_DAY = |
60 MILLISECONDS_PER_HOUR * HOURS_PER_DAY; | 18 MILLISECONDS_PER_HOUR * HOURS_PER_DAY; |
61 | |
62 static final int SECONDS_PER_HOUR = SECONDS_PER_MINUTE * MINUTES_PER_HOUR; | 19 static final int SECONDS_PER_HOUR = SECONDS_PER_MINUTE * MINUTES_PER_HOUR; |
63 static final int SECONDS_PER_DAY = SECONDS_PER_HOUR * HOURS_PER_DAY; | 20 static final int SECONDS_PER_DAY = SECONDS_PER_HOUR * HOURS_PER_DAY; |
64 | |
65 static final int MINUTES_PER_DAY = MINUTES_PER_HOUR * HOURS_PER_DAY; | 21 static final int MINUTES_PER_DAY = MINUTES_PER_HOUR * HOURS_PER_DAY; |
66 } | 22 } |
OLD | NEW |