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

Unified Diff: pkg/compiler/lib/src/ssa/kernel_impact.dart

Issue 2655263002: Rename KernelWorldBuilder to KernelElementAdapter. (Closed)
Patch Set: Created 3 years, 11 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
« no previous file with comments | « pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/compiler/lib/src/ssa/kernel_impact.dart
diff --git a/pkg/compiler/lib/src/ssa/kernel_impact.dart b/pkg/compiler/lib/src/ssa/kernel_impact.dart
index 54d2686958adbc509eff075402c6b2a93e47f4ce..0dad61b6594c58d38bb1dd0cd95f63fc39179670 100644
--- a/pkg/compiler/lib/src/ssa/kernel_impact.dart
+++ b/pkg/compiler/lib/src/ssa/kernel_impact.dart
@@ -13,6 +13,7 @@ import '../elements/types.dart';
import '../elements/elements.dart' show AstElement, ResolvedAst;
import '../elements/entities.dart';
import '../js_backend/backend.dart' show JavaScriptBackend;
+import '../kernel/element_adapter.dart';
import '../kernel/kernel.dart';
import '../kernel/kernel_debug.dart';
import '../resolution/registry.dart' show ResolutionWorldImpactBuilder;
@@ -66,15 +67,15 @@ ResolutionImpact build(Compiler compiler, ResolvedAst resolvedAst) {
class KernelImpactBuilder extends ir.Visitor {
final ResolutionWorldImpactBuilder impactBuilder;
- final KernelWorldBuilder astAdapter;
+ final KernelElementAdapter elementAdapter;
final CommonElements commonElements;
- KernelImpactBuilder(String name, this.astAdapter, this.commonElements)
+ KernelImpactBuilder(String name, this.elementAdapter, this.commonElements)
: this.impactBuilder = new ResolutionWorldImpactBuilder(name);
/// Add a checked-mode type use of [type] if it is not `dynamic`.
DartType checkType(ir.DartType irType) {
- DartType type = astAdapter.getDartType(irType);
+ DartType type = elementAdapter.getDartType(irType);
if (!type.isDynamic) {
impactBuilder.registerTypeUse(new TypeUse.checkedModeCheck(type));
}
@@ -109,11 +110,11 @@ class KernelImpactBuilder extends ir.Visitor {
}
}
if (field.isInstanceMember &&
- astAdapter.isNativeClass(field.enclosingClass)) {
- impactBuilder
- .registerNativeData(astAdapter.getNativeBehaviorForFieldLoad(field));
- impactBuilder
- .registerNativeData(astAdapter.getNativeBehaviorForFieldStore(field));
+ elementAdapter.isNativeClass(field.enclosingClass)) {
+ impactBuilder.registerNativeData(
+ elementAdapter.getNativeBehaviorForFieldLoad(field));
+ impactBuilder.registerNativeData(
+ elementAdapter.getNativeBehaviorForFieldStore(field));
}
return impactBuilder;
}
@@ -145,9 +146,9 @@ class KernelImpactBuilder extends ir.Visitor {
"Unexpected async marker: ${procedure.function.asyncMarker}");
}
if (procedure.isExternal &&
- !astAdapter.isForeignLibrary(procedure.enclosingLibrary)) {
- impactBuilder
- .registerNativeData(astAdapter.getNativeBehaviorForMethod(procedure));
+ !elementAdapter.isForeignLibrary(procedure.enclosingLibrary)) {
+ impactBuilder.registerNativeData(
+ elementAdapter.getNativeBehaviorForMethod(procedure));
}
return impactBuilder;
}
@@ -252,10 +253,11 @@ class KernelImpactBuilder extends ir.Visitor {
void handleNew(ir.InvocationExpression node, ir.Member target,
{bool isConst: false}) {
_visitArguments(node.arguments);
- FunctionEntity constructor = astAdapter.getConstructor(target);
- InterfaceType type = astAdapter.createInterfaceType(
+ FunctionEntity constructor = elementAdapter.getConstructor(target);
+ InterfaceType type = elementAdapter.createInterfaceType(
target.enclosingClass, node.arguments.types);
- CallStructure callStructure = astAdapter.getCallStructure(node.arguments);
+ CallStructure callStructure =
+ elementAdapter.getCallStructure(node.arguments);
impactBuilder.registerStaticUse(isConst
? new StaticUse.constConstructorInvoke(constructor, callStructure, type)
: new StaticUse.typedConstructorInvoke(
@@ -267,15 +269,15 @@ class KernelImpactBuilder extends ir.Visitor {
@override
void visitSuperInitializer(ir.SuperInitializer node) {
- FunctionEntity target = astAdapter.getConstructor(node.target);
+ FunctionEntity target = elementAdapter.getConstructor(node.target);
_visitArguments(node.arguments);
impactBuilder.registerStaticUse(new StaticUse.superConstructorInvoke(
- target, astAdapter.getCallStructure(node.arguments)));
+ target, elementAdapter.getCallStructure(node.arguments)));
}
@override
void visitStaticInvocation(ir.StaticInvocation node) {
- FunctionEntity target = astAdapter.getMethod(node.target);
+ FunctionEntity target = elementAdapter.getMethod(node.target);
if (node.target.kind == ir.ProcedureKind.Factory) {
// TODO(johnniwinther): We should not mark the type as instantiated but
// rather follow the type arguments directly.
@@ -303,24 +305,24 @@ class KernelImpactBuilder extends ir.Visitor {
} else {
_visitArguments(node.arguments);
impactBuilder.registerStaticUse(new StaticUse.staticInvoke(
- target, astAdapter.getCallStructure(node.arguments)));
+ target, elementAdapter.getCallStructure(node.arguments)));
}
- switch (astAdapter.getForeignKind(node)) {
+ switch (elementAdapter.getForeignKind(node)) {
case ForeignKind.JS:
- impactBuilder
- .registerNativeData(astAdapter.getNativeBehaviorForJsCall(node));
+ impactBuilder.registerNativeData(
+ elementAdapter.getNativeBehaviorForJsCall(node));
break;
case ForeignKind.JS_BUILTIN:
impactBuilder.registerNativeData(
- astAdapter.getNativeBehaviorForJsBuiltinCall(node));
+ elementAdapter.getNativeBehaviorForJsBuiltinCall(node));
break;
case ForeignKind.JS_EMBEDDED_GLOBAL:
impactBuilder.registerNativeData(
- astAdapter.getNativeBehaviorForJsEmbeddedGlobalCall(node));
+ elementAdapter.getNativeBehaviorForJsEmbeddedGlobalCall(node));
break;
case ForeignKind.JS_INTERCEPTOR_CONSTANT:
InterfaceType type =
- astAdapter.getInterfaceTypeForJsInterceptorCall(node);
+ elementAdapter.getInterfaceTypeForJsInterceptorCall(node);
if (type != null) {
impactBuilder.registerTypeUse(new TypeUse.instantiation(type));
}
@@ -334,10 +336,10 @@ class KernelImpactBuilder extends ir.Visitor {
void visitStaticGet(ir.StaticGet node) {
ir.Member target = node.target;
if (target is ir.Procedure && target.kind == ir.ProcedureKind.Method) {
- FunctionEntity method = astAdapter.getMethod(target);
+ FunctionEntity method = elementAdapter.getMethod(target);
impactBuilder.registerStaticUse(new StaticUse.staticTearOff(method));
} else {
- MemberEntity member = astAdapter.getMember(target);
+ MemberEntity member = elementAdapter.getMember(target);
impactBuilder.registerStaticUse(new StaticUse.staticGet(member));
}
}
@@ -345,15 +347,15 @@ class KernelImpactBuilder extends ir.Visitor {
@override
void visitStaticSet(ir.StaticSet node) {
visitNode(node.value);
- MemberEntity member = astAdapter.getMember(node.target);
+ MemberEntity member = elementAdapter.getMember(node.target);
impactBuilder.registerStaticUse(new StaticUse.staticSet(member));
}
void handleSuperInvocation(ir.Node target, ir.Node arguments) {
- FunctionEntity method = astAdapter.getMethod(target);
+ FunctionEntity method = elementAdapter.getMethod(target);
_visitArguments(arguments);
impactBuilder.registerStaticUse(new StaticUse.superInvoke(
- method, astAdapter.getCallStructure(arguments)));
+ method, elementAdapter.getCallStructure(arguments)));
}
@override
@@ -370,10 +372,10 @@ class KernelImpactBuilder extends ir.Visitor {
void handleSuperGet(ir.Member target) {
if (target is ir.Procedure && target.kind == ir.ProcedureKind.Method) {
- FunctionEntity method = astAdapter.getMethod(target);
+ FunctionEntity method = elementAdapter.getMethod(target);
impactBuilder.registerStaticUse(new StaticUse.superTearOff(method));
} else {
- MemberEntity member = astAdapter.getMember(target);
+ MemberEntity member = elementAdapter.getMember(target);
impactBuilder.registerStaticUse(new StaticUse.superGet(member));
}
}
@@ -391,10 +393,10 @@ class KernelImpactBuilder extends ir.Visitor {
void handleSuperSet(ir.Node target, ir.Node value) {
visitNode(value);
if (target is ir.Field) {
- FieldEntity field = astAdapter.getField(target);
+ FieldEntity field = elementAdapter.getField(target);
impactBuilder.registerStaticUse(new StaticUse.superFieldSet(field));
} else {
- FunctionEntity method = astAdapter.getMethod(target);
+ FunctionEntity method = elementAdapter.getMethod(target);
impactBuilder.registerStaticUse(new StaticUse.superSetterSet(method));
}
}
@@ -419,7 +421,7 @@ class KernelImpactBuilder extends ir.Visitor {
} else {
visitNode(invocation.receiver);
impactBuilder.registerDynamicUse(
- new DynamicUse(astAdapter.getSelector(invocation), null));
+ new DynamicUse(elementAdapter.getSelector(invocation), null));
}
_visitArguments(invocation.arguments);
}
@@ -428,7 +430,7 @@ class KernelImpactBuilder extends ir.Visitor {
void visitPropertyGet(ir.PropertyGet node) {
visitNode(node.receiver);
impactBuilder.registerDynamicUse(new DynamicUse(
- new Selector.getter(astAdapter.getName(node.name)), null));
+ new Selector.getter(elementAdapter.getName(node.name)), null));
}
@override
@@ -436,7 +438,7 @@ class KernelImpactBuilder extends ir.Visitor {
visitNode(node.receiver);
visitNode(node.value);
impactBuilder.registerDynamicUse(new DynamicUse(
- new Selector.setter(astAdapter.getName(node.name)), null));
+ new Selector.setter(elementAdapter.getName(node.name)), null));
}
@override
@@ -457,7 +459,7 @@ class KernelImpactBuilder extends ir.Visitor {
@override
void visitFunctionDeclaration(ir.FunctionDeclaration node) {
impactBuilder.registerStaticUse(
- new StaticUse.closure(astAdapter.getLocalFunction(node)));
+ new StaticUse.closure(elementAdapter.getLocalFunction(node)));
handleSignature(node.function);
visitNode(node.function.body);
}
@@ -465,7 +467,7 @@ class KernelImpactBuilder extends ir.Visitor {
@override
void visitFunctionExpression(ir.FunctionExpression node) {
impactBuilder.registerStaticUse(
- new StaticUse.closure(astAdapter.getLocalFunction(node)));
+ new StaticUse.closure(elementAdapter.getLocalFunction(node)));
handleSignature(node.function);
visitNode(node.function.body);
}
@@ -483,14 +485,14 @@ class KernelImpactBuilder extends ir.Visitor {
@override
void visitIsExpression(ir.IsExpression node) {
impactBuilder.registerTypeUse(
- new TypeUse.isCheck(astAdapter.getDartType(node.type)));
+ new TypeUse.isCheck(elementAdapter.getDartType(node.type)));
visitNode(node.operand);
}
@override
void visitAsExpression(ir.AsExpression node) {
- impactBuilder
- .registerTypeUse(new TypeUse.asCast(astAdapter.getDartType(node.type)));
+ impactBuilder.registerTypeUse(
+ new TypeUse.asCast(elementAdapter.getDartType(node.type)));
visitNode(node.operand);
}
@@ -530,7 +532,7 @@ class KernelImpactBuilder extends ir.Visitor {
}
if (node.guard is! ir.DynamicType) {
impactBuilder.registerTypeUse(
- new TypeUse.catchType(astAdapter.getDartType(node.guard)));
+ new TypeUse.catchType(elementAdapter.getDartType(node.guard)));
}
visitNode(node.body);
}
@@ -544,22 +546,22 @@ class KernelImpactBuilder extends ir.Visitor {
@override
void visitTypeLiteral(ir.TypeLiteral node) {
impactBuilder.registerTypeUse(
- new TypeUse.typeLiteral(astAdapter.getDartType(node.type)));
+ new TypeUse.typeLiteral(elementAdapter.getDartType(node.type)));
}
@override
void visitFieldInitializer(ir.FieldInitializer node) {
impactBuilder.registerStaticUse(
- new StaticUse.fieldInit(astAdapter.getField(node.field)));
+ new StaticUse.fieldInit(elementAdapter.getField(node.field)));
visitNode(node.value);
}
@override
void visitRedirectingInitializer(ir.RedirectingInitializer node) {
_visitArguments(node.arguments);
- FunctionEntity target = astAdapter.getConstructor(node.target);
+ FunctionEntity target = elementAdapter.getConstructor(node.target);
impactBuilder.registerStaticUse(new StaticUse.superConstructorInvoke(
- target, astAdapter.getCallStructure(node.arguments)));
+ target, elementAdapter.getCallStructure(node.arguments)));
}
// TODO(johnniwinther): Make this throw and visit child nodes explicitly
« no previous file with comments | « pkg/compiler/lib/src/ssa/kernel_ast_adapter.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698