Index: pkg/analyzer/lib/src/kernel/resynthesize.dart |
diff --git a/pkg/analyzer/lib/src/kernel/resynthesize.dart b/pkg/analyzer/lib/src/kernel/resynthesize.dart |
index 95783ddaf55da4e4ec286df0d5f82ed0b9c2efb4..cda1c2f8f22eee54b0bf72c75f89ba64f44d882f 100644 |
--- a/pkg/analyzer/lib/src/kernel/resynthesize.dart |
+++ b/pkg/analyzer/lib/src/kernel/resynthesize.dart |
@@ -33,6 +33,11 @@ class KernelResynthesizer { |
KernelResynthesizer(this._analysisContext, this._types, this._kernelMap); |
/** |
+ * Return the `Type` type. |
+ */ |
+ DartType get typeType => getLibrary('dart:core').getType('Type').type; |
+ |
+ /** |
* Return the [LibraryElementImpl] for the given [uriStr], or `null` if |
* the library is not part of the Kernel libraries bundle. |
*/ |
@@ -204,6 +209,14 @@ class _ExprBuilder { |
keyword, constructorName, arguments); |
} |
+ if (expr is kernel.TypeLiteral) { |
+ var type = _context.getType(null, expr.type); |
+ var identifier = AstTestFactory.identifier3(type.element.name); |
+ identifier.staticElement = type.element; |
+ identifier.staticType = _context._resynthesizer.typeType; |
+ return identifier; |
+ } |
+ |
// TODO(scheglov): complete getExpression |
throw new UnimplementedError('kernel: (${expr.runtimeType}) $expr'); |
} |