| Index: pkg/compiler/lib/src/js_backend/constant_system_javascript.dart
|
| diff --git a/pkg/compiler/lib/src/js_backend/constant_system_javascript.dart b/pkg/compiler/lib/src/js_backend/constant_system_javascript.dart
|
| index 60265b33444e1ee1201a65a2716be6f2decef7f0..9761f9daa87139fb0f7c6bcd482cb6a3c09167be 100644
|
| --- a/pkg/compiler/lib/src/js_backend/constant_system_javascript.dart
|
| +++ b/pkg/compiler/lib/src/js_backend/constant_system_javascript.dart
|
| @@ -124,6 +124,20 @@ class JavaScriptAddOperation implements BinaryOperation {
|
| apply(left, right) => _addOperation.apply(left, right);
|
| }
|
|
|
| +class JavaScriptRemainderOperation extends ArithmeticNumOperation {
|
| + String get name => 'remainder';
|
| +
|
| + const JavaScriptRemainderOperation();
|
| +
|
| + int foldInts(int left, int right) {
|
| + if (right == 0) return null;
|
| + return left.remainder(right);
|
| + }
|
| +
|
| + num foldNums(num left, num right) => left.remainder(right);
|
| + apply(left, right) => left.remainder(right);
|
| +}
|
| +
|
| class JavaScriptBinaryArithmeticOperation implements BinaryOperation {
|
| final BinaryOperation dartArithmeticOperation;
|
|
|
| @@ -233,6 +247,7 @@ class JavaScriptConstantSystem extends ConstantSystem {
|
| const JavaScriptBinaryArithmeticOperation(const MultiplyOperation());
|
| final negate = const JavaScriptNegateOperation();
|
| final not = const NotOperation();
|
| + final remainder = const JavaScriptRemainderOperation();
|
| final shiftLeft =
|
| const JavaScriptBinaryBitOperation(const ShiftLeftOperation());
|
| final shiftRight = const JavaScriptShiftRightOperation();
|
|
|