| 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 08174df252d834880d872d183b866b6d0a548a9e..8d24538210716262bb9c85bf0846928f7b5a6fe7 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();
|
|
|