Showing
1 changed file
with
32 additions
and
7 deletions
| @@ -3,10 +3,6 @@ part of 'rx_impl.dart'; | @@ -3,10 +3,6 @@ part of 'rx_impl.dart'; | ||
| 3 | /// Base Rx class for all num Rx's. | 3 | /// Base Rx class for all num Rx's. |
| 4 | class _BaseRxNum<T extends num> extends _RxImpl<T> { | 4 | class _BaseRxNum<T extends num> extends _RxImpl<T> { |
| 5 | /// Addition operator. */ | 5 | /// Addition operator. */ |
| 6 | - num operator +(num other) => value + other; | ||
| 7 | - | ||
| 8 | - /// Subtraction operator. | ||
| 9 | - num operator -(num other) => value - other; | ||
| 10 | 6 | ||
| 11 | /// Multiplication operator. | 7 | /// Multiplication operator. |
| 12 | num operator *(num other) => value * other; | 8 | num operator *(num other) => value * other; |
| @@ -270,7 +266,18 @@ class _BaseRxNum<T extends num> extends _RxImpl<T> { | @@ -270,7 +266,18 @@ class _BaseRxNum<T extends num> extends _RxImpl<T> { | ||
| 270 | value.toStringAsPrecision(precision); | 266 | value.toStringAsPrecision(precision); |
| 271 | } | 267 | } |
| 272 | 268 | ||
| 273 | -class RxNum extends _BaseRxNum<num> {} | 269 | +class RxNum extends _BaseRxNum<num> { |
| 270 | + num operator +(num other) { | ||
| 271 | + value += other; | ||
| 272 | + return value; | ||
| 273 | + } | ||
| 274 | + | ||
| 275 | + /// Subtraction operator. | ||
| 276 | + num operator -(num other) { | ||
| 277 | + value -= other; | ||
| 278 | + return value; | ||
| 279 | + } | ||
| 280 | +} | ||
| 274 | 281 | ||
| 275 | class RxDouble extends _BaseRxNum<double> { | 282 | class RxDouble extends _BaseRxNum<double> { |
| 276 | RxDouble([double initial]) { | 283 | RxDouble([double initial]) { |
| @@ -278,10 +285,16 @@ class RxDouble extends _BaseRxNum<double> { | @@ -278,10 +285,16 @@ class RxDouble extends _BaseRxNum<double> { | ||
| 278 | } | 285 | } |
| 279 | 286 | ||
| 280 | /// Addition operator. | 287 | /// Addition operator. |
| 281 | - double operator +(num other) => value + other; | 288 | + RxDouble operator +(num other) { |
| 289 | + value += other; | ||
| 290 | + return this; | ||
| 291 | + } | ||
| 282 | 292 | ||
| 283 | /// Subtraction operator. | 293 | /// Subtraction operator. |
| 284 | - double operator -(num other) => value - other; | 294 | + RxDouble operator -(num other) { |
| 295 | + value -= other; | ||
| 296 | + return this; | ||
| 297 | + } | ||
| 285 | 298 | ||
| 286 | /// Multiplication operator. | 299 | /// Multiplication operator. |
| 287 | double operator *(num other) => value * other; | 300 | double operator *(num other) => value * other; |
| @@ -383,6 +396,18 @@ class RxInt extends _BaseRxNum<int> { | @@ -383,6 +396,18 @@ class RxInt extends _BaseRxNum<int> { | ||
| 383 | value = initial; | 396 | value = initial; |
| 384 | } | 397 | } |
| 385 | 398 | ||
| 399 | + /// Addition operator. | ||
| 400 | + RxInt operator +(int other) { | ||
| 401 | + value += other; | ||
| 402 | + return this; | ||
| 403 | + } | ||
| 404 | + | ||
| 405 | + /// Subtraction operator. | ||
| 406 | + RxInt operator -(int other) { | ||
| 407 | + value -= other; | ||
| 408 | + return this; | ||
| 409 | + } | ||
| 410 | + | ||
| 386 | /// Bit-wise and operator. | 411 | /// Bit-wise and operator. |
| 387 | /// | 412 | /// |
| 388 | /// Treating both `this` and [other] as sufficiently large two's component | 413 | /// Treating both `this` and [other] as sufficiently large two's component |
-
Please register or login to post a comment