Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Unified Diff: pkg/code_transformers/lib/src/resolver_impl.dart

Issue 211393006: Enables codegen support in polymer (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: pkg/code_transformers/lib/src/resolver_impl.dart
diff --git a/pkg/code_transformers/lib/src/resolver_impl.dart b/pkg/code_transformers/lib/src/resolver_impl.dart
index 93825212a48964889a989ea1f74dbda1e2dd9670..b70d646fea2fe52eb7ef30067affbc7cfd2bf9a4 100644
--- a/pkg/code_transformers/lib/src/resolver_impl.dart
+++ b/pkg/code_transformers/lib/src/resolver_impl.dart
@@ -6,7 +6,9 @@ library code_transformer.src.resolver_impl;
import 'dart:async';
import 'package:analyzer/analyzer.dart' show parseCompilationUnit;
-import 'package:analyzer/src/generated/ast.dart';
+import 'package:analyzer/src/generated/ast.dart' hide ConstantEvaluator;
+import 'package:analyzer/src/generated/constant.dart' show ConstantEvaluator,
+ EvaluationResult;
import 'package:analyzer/src/generated/element.dart';
import 'package:analyzer/src/generated/engine.dart';
import 'package:analyzer/src/generated/error.dart';
@@ -36,7 +38,7 @@ class ResolverImpl implements Resolver {
final Map<AssetId, _AssetBasedSource> sources =
<AssetId, _AssetBasedSource>{};
- final AnalysisContext _context =
+ final InternalAnalysisContext _context =
AnalysisEngine.instance.createAnalysisContext();
/// Transform for which this is currently updating, or null when not updating.
@@ -223,6 +225,12 @@ class ResolverImpl implements Resolver {
orElse: () => null);
}
+ EvaluationResult evaluateConstant(
+ LibraryElement library, Expression expression) {
+ return new ConstantEvaluator(library.source, _context.typeProvider)
+ .evaluate(expression);
+ }
+
Uri getImportUri(LibraryElement lib, {AssetId from}) =>
_getSourceUri(lib, from: from);

Powered by Google App Engine
This is Rietveld 408576698