(
Moment start,
Moment end
)
| 93 | * @throws UnsupportedOperationException wenn ein Zeitpunkt vor 1972 ist |
| 94 | */ |
| 95 | public long between( |
| 96 | Moment start, |
| 97 | Moment end |
| 98 | ) { |
| 99 | |
| 100 | Moment.check1972(start); |
| 101 | Moment.check1972(end); |
| 102 | |
| 103 | switch (this) { |
| 104 | case SECONDS: |
| 105 | long delta = ( |
| 106 | end.getElapsedTime(TimeScale.UTC) |
| 107 | - start.getElapsedTime(TimeScale.UTC)); |
| 108 | if (delta < 0) { |
| 109 | if (end.getNanosecond() > start.getNanosecond()) { |
| 110 | delta++; |
| 111 | } |
| 112 | } else if (delta > 0) { |
| 113 | if (end.getNanosecond() < start.getNanosecond()) { |
| 114 | delta--; |
| 115 | } |
| 116 | } |
| 117 | return delta; |
| 118 | case NANOSECONDS: |
| 119 | return MathUtils.safeAdd( |
| 120 | MathUtils.safeMultiply( |
| 121 | MathUtils.safeSubtract( |
| 122 | end.getElapsedTime(TimeScale.UTC), |
| 123 | start.getElapsedTime(TimeScale.UTC) |
| 124 | ), |
| 125 | 1000000000 |
| 126 | ), |
| 127 | end.getNanosecond() - start.getNanosecond() |
| 128 | ); |
| 129 | default: |
| 130 | throw new UnsupportedOperationException(); |
| 131 | } |
| 132 | |
| 133 | } |
| 134 | |
| 135 | @Override |
| 136 | public double getLength() { |
nothing calls this directly
no test coverage detected