| Index: sdk/lib/_internal/compiler/implementation/universe/universe.dart
|
| ===================================================================
|
| --- sdk/lib/_internal/compiler/implementation/universe/universe.dart (revision 29416)
|
| +++ sdk/lib/_internal/compiler/implementation/universe/universe.dart (working copy)
|
| @@ -595,6 +595,10 @@
|
| return 'Selector($kind, $name, '
|
| 'arity=$argumentCount$named$type)';
|
| }
|
| +
|
| + Selector extendIfReachesAll(Compiler compiler) {
|
| + return new TypedSelector(compiler.typesTask.dynamicType, this);
|
| + }
|
| }
|
|
|
| class TypedSelector extends Selector {
|
| @@ -656,4 +660,12 @@
|
| if (!mask.canHit(element, this, compiler)) return false;
|
| return appliesUntyped(element, compiler);
|
| }
|
| +
|
| + Selector extendIfReachesAll(Compiler compiler) {
|
| + bool canReachAll = compiler.enabledInvokeOn
|
| + && mask.needsNoSuchMethodHandling(this, compiler);
|
| + return canReachAll
|
| + ? new TypedSelector(compiler.typesTask.dynamicType, this)
|
| + : this;
|
| + }
|
| }
|
|
|