| Index: pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| diff --git a/pkg/compiler/lib/src/cps_ir/type_propagation.dart b/pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| index ffb61e3932c155b4d21de27508f8736b8e25b141..dced6203e7936fad121befb8df87d9e179676d9f 100644
|
| --- a/pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| +++ b/pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| @@ -21,6 +21,25 @@ abstract class TypeSystem<T> {
|
| T typeOf(ConstantValue constant);
|
| }
|
|
|
| +class UnitTypeSystem implements TypeSystem<String> {
|
| + static const String UNIT = 'unit';
|
| +
|
| + get boolType => UNIT;
|
| + get dynamicType => UNIT;
|
| + get functionType => UNIT;
|
| + get intType => UNIT;
|
| + get listType => UNIT;
|
| + get mapType => UNIT;
|
| + get stringType => UNIT;
|
| + get typeType => UNIT;
|
| +
|
| + bool areAssignable(a, b) => true;
|
| + getParameterType(_) => UNIT;
|
| + getReturnType(_) => UNIT;
|
| + join(a, b) => UNIT;
|
| + typeOf(_) => UNIT;
|
| +}
|
| +
|
| class TypeMaskSystem implements TypeSystem<TypeMask> {
|
| final TypesTask inferrer;
|
| final ClassWorld classWorld;
|
|
|