Chromium Code Reviews| Index: pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart |
| diff --git a/pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart b/pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart |
| index 83bb32c8f678f7c5ce2a05260e8f099c6de90d5a..bb90dca5269d106dc169630313e1c5fe454b1afe 100644 |
| --- a/pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart |
| +++ b/pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart |
| @@ -191,6 +191,8 @@ class DartTypeConverter extends ir.DartTypeVisitor<DartType> { |
| DartTypeConverter(this.astAdapter); |
| + DartType visitType(ir.DartType type) => type.accept(this); |
| + |
| List<DartType> visitTypes(List<ir.DartType> types) { |
| return new List.generate( |
| types.length, (int index) => types[index].accept(this)); |
| @@ -203,7 +205,12 @@ class DartTypeConverter extends ir.DartTypeVisitor<DartType> { |
| @override |
| DartType visitFunctionType(ir.FunctionType node) { |
| - throw new UnimplementedError("Function types not currently supported"); |
| + return new FunctionType.synthesized( |
| + visitType(node.returnType), |
|
Harry Terkelsen
2016/09/22 19:20:15
long lines
Johnni Winther
2016/09/23 09:01:50
Done.
|
| + visitTypes(node.positionalParameters.take(node.requiredParameterCount).toList()), |
| + visitTypes(node.positionalParameters.skip(node.requiredParameterCount).toList()), |
| + node.namedParameters.keys.toList(), |
| + visitTypes(node.namedParameters.values.toList())); |
| } |
| @override |