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

Unified Diff: pkg/front_end/lib/src/fasta/type_inference/type_inference_engine.dart

Issue 3004923002: Rename front end shadow classes from "Kernel..." to "Shadow...". (Closed)
Patch Set: Created 3 years, 4 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/front_end/lib/src/fasta/type_inference/type_inference_engine.dart
diff --git a/pkg/front_end/lib/src/fasta/type_inference/type_inference_engine.dart b/pkg/front_end/lib/src/fasta/type_inference/type_inference_engine.dart
index 6b6d892f267ea99b8d00820e9f75ff0cd30fca90..c6ddfee971025665644328c2be8895abfca06687 100644
--- a/pkg/front_end/lib/src/fasta/type_inference/type_inference_engine.dart
+++ b/pkg/front_end/lib/src/fasta/type_inference/type_inference_engine.dart
@@ -40,7 +40,7 @@ import '../messages.dart' show getLocationFromNode;
class AccessorNode extends dependencyWalker.Node<AccessorNode> {
final TypeInferenceEngineImpl _typeInferenceEngine;
- final KernelMember member;
+ final ShadowMember member;
bool isImmediatelyEvident = false;
@@ -76,12 +76,12 @@ class AccessorNode extends dependencyWalker.Node<AccessorNode> {
/// have to infer is its return type.
bool get isTrivialSetter {
var member = this.member;
- if (member is KernelProcedure &&
+ if (member is ShadowProcedure &&
member.isSetter &&
member.function != null) {
var parameters = member.function.positionalParameters;
return parameters.length > 0 &&
- !KernelVariableDeclaration.isImplicitlyTyped(parameters[0]);
+ !ShadowVariableDeclaration.isImplicitlyTyped(parameters[0]);
}
return false;
}
@@ -113,7 +113,7 @@ enum InferenceState {
/// Data structure for tracking dependencies among methods that require type
/// inference.
class MethodNode {
- final KernelProcedure procedure;
+ final ShadowProcedure procedure;
InferenceState state = InferenceState.NotInferredYet;
@@ -152,7 +152,7 @@ abstract class TypeInferenceEngine {
/// Creates a [TypeInferrer] object which is ready to perform type inference
/// on the given [field].
TypeInferrer createTopLevelTypeInferrer(TypeInferenceListener listener,
- InterfaceType thisType, KernelMember member);
+ InterfaceType thisType, ShadowMember member);
/// Performs the second phase of top level initializer inference, which is to
/// visit all accessors and top level variables that were passed to
@@ -165,10 +165,10 @@ abstract class TypeInferenceEngine {
/// Records that the given initializing [formal] will need top level type
/// inference.
- void recordInitializingFormal(KernelVariableDeclaration formal);
+ void recordInitializingFormal(ShadowVariableDeclaration formal);
/// Records that the given [member] will need top level type inference.
- void recordMember(KernelMember member);
+ void recordMember(ShadowMember member);
}
/// Derived class containing generic implementations of
@@ -209,7 +209,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
final methodNodes = <MethodNode>[];
- final initializingFormals = <KernelVariableDeclaration>[];
+ final initializingFormals = <ShadowVariableDeclaration>[];
@override
CoreTypes coreTypes;
@@ -229,7 +229,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
if (candidateOverrides.isNotEmpty) {
var dependencies = <AccessorNode>[];
for (var override in candidateOverrides) {
- var dep = KernelMember.getAccessorNode(override);
+ var dep = ShadowMember.getAccessorNode(override);
if (dep != null) dependencies.add(dep);
}
accessorNode.isImmediatelyEvident = true;
@@ -238,7 +238,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
// Otherwise its dependencies are based on the initializer expression.
var member = accessorNode.member;
- if (member is KernelField) {
+ if (member is ShadowField) {
if (expandedTopLevelInference) {
// In expanded top level inference, we determine the dependencies by
// doing a "dry run" of top level inference and recording which static
@@ -261,7 +261,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
// expressions that are not "immediately evident".
// TODO(paulberry): get rid of this mode once we are sure we no longer
// need it.
- var collector = new KernelDependencyCollector();
+ var collector = new ShadowDependencyCollector();
collector.collectDependencies(member.initializer);
accessorNode.isImmediatelyEvident = collector.isImmediatelyEvident;
return collector.dependencies;
@@ -311,7 +311,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
for (var procedure in cls.procedures) {
if (procedure.isStatic) continue;
void compute(VariableDeclaration formal) {
- KernelVariableDeclaration kernelVariableDeclaration = formal;
+ ShadowVariableDeclaration kernelVariableDeclaration = formal;
var pessimisticType = pessimization.substituteType(formal.type);
if (!typeSchemaEnvironment.isSubtypeOf(formal.type, pessimisticType)) {
kernelVariableDeclaration.isSemiSafe = true;
@@ -326,10 +326,10 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
}
/// Creates an [AccessorNode] to track dependencies of the given [member].
- AccessorNode createAccessorNode(KernelMember member);
+ AccessorNode createAccessorNode(ShadowMember member);
/// Creates a [MethodNode] to track dependencies of the given [procedure].
- MethodNode createMethodNode(KernelProcedure procedure);
+ MethodNode createMethodNode(ShadowProcedure procedure);
@override
void finishTopLevel() {
@@ -345,7 +345,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
new _AccessorWalker().walk(accessorNode);
}
}
- for (KernelVariableDeclaration formal in initializingFormals) {
+ for (ShadowVariableDeclaration formal in initializingFormals) {
try {
formal.type = _inferInitializingFormalType(formal);
} catch (e, s) {
@@ -361,7 +361,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
/// Retrieve the [TypeInferrer] for the given [member], which was created by
/// a previous call to [createTopLevelTypeInferrer].
- TypeInferrerImpl getMemberTypeInferrer(KernelMember member);
+ TypeInferrerImpl getMemberTypeInferrer(ShadowMember member);
/// Performs type inference on the given [accessorNode].
void inferAccessor(AccessorNode accessorNode) {
@@ -370,13 +370,13 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
var member = accessorNode.member;
if (strongMode) {
var typeInferrer = getMemberTypeInferrer(member);
- if (member is KernelProcedure && member.isSetter) {
- KernelProcedure.inferSetterReturnType(member, this, typeInferrer.uri);
+ if (member is ShadowProcedure && member.isSetter) {
+ ShadowProcedure.inferSetterReturnType(member, this, typeInferrer.uri);
}
if (!accessorNode.isTrivialSetter) {
var inferredType = tryInferAccessorByInheritance(accessorNode);
if (inferredType == null) {
- if (member is KernelField) {
+ if (member is ShadowField) {
typeInferrer.isImmediatelyEvident = true;
inferredType = accessorNode.isImmediatelyEvident
? typeInferrer.inferDeclarationType(
@@ -403,7 +403,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
// TODO(paulberry): the following is a hack so that outlines don't contain
// initializers. But it means that we rebuild the initializers when doing
// a full compile. There should be a better way.
- if (member is KernelField) {
+ if (member is ShadowField) {
member.initializer = null;
}
}
@@ -419,7 +419,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
// TODO(paulberry): the following is a hack so that outlines don't contain
// initializers. But it means that we rebuild the initializers when doing
// a full compile. There should be a better way.
- if (member is KernelField) {
+ if (member is ShadowField) {
member.initializer = null;
}
}
@@ -485,13 +485,13 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
}
@override
- void recordInitializingFormal(KernelVariableDeclaration formal) {
+ void recordInitializingFormal(ShadowVariableDeclaration formal) {
initializingFormals.add(formal);
}
@override
- void recordMember(KernelMember member) {
- if (member is KernelProcedure && !member.isGetter && !member.isSetter) {
+ void recordMember(ShadowMember member) {
+ if (member is ShadowProcedure && !member.isGetter && !member.isSetter) {
methodNodes.add(createMethodNode(member));
} else {
accessorNodes.add(createAccessorNode(member));
@@ -517,7 +517,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
List<FunctionType> _computeMethodOverriddenTypes(MethodNode methodNode) {
var overriddenTypes = <FunctionType>[];
for (var override in methodNode.overrides) {
- MethodNode overrideNode = KernelProcedure.getMethodNode(override);
+ MethodNode overrideNode = ShadowProcedure.getMethodNode(override);
if (overrideNode != null) {
inferMethodIfNeeded(overrideNode);
}
@@ -558,7 +558,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
DartType _computeOverriddenAccessorType(
Member override, AccessorNode accessorNode) {
if (fusedTopLevelInference) {
- AccessorNode dependency = KernelMember.getAccessorNode(override);
+ AccessorNode dependency = ShadowMember.getAccessorNode(override);
if (dependency != null) {
inferAccessorFused(dependency, accessorNode);
}
@@ -593,8 +593,8 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
.substituteType(overriddenType);
}
- DartType _inferInitializingFormalType(KernelVariableDeclaration formal) {
- assert(KernelVariableDeclaration.isImplicitlyTyped(formal));
+ DartType _inferInitializingFormalType(ShadowVariableDeclaration formal) {
+ assert(ShadowVariableDeclaration.isImplicitlyTyped(formal));
var enclosingClass = formal.parent?.parent?.parent;
if (enclosingClass is Class) {
for (var field in enclosingClass.fields) {
@@ -633,7 +633,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
return inferredType;
}
- if (KernelProcedure.hasImplicitReturnType(methodNode.procedure)) {
+ if (ShadowProcedure.hasImplicitReturnType(methodNode.procedure)) {
var inferredType =
matchTypes(overriddenTypes.map((type) => type.returnType));
instrumentation?.record(
@@ -646,7 +646,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
var positionalParameters =
methodNode.procedure.function.positionalParameters;
for (int i = 0; i < positionalParameters.length; i++) {
- if (KernelVariableDeclaration
+ if (ShadowVariableDeclaration
.isImplicitlyTyped(positionalParameters[i])) {
// Note that if the parameter is not present in the overridden method,
// getPositionalParameterType treats it as dynamic. This is consistent
@@ -675,7 +675,7 @@ abstract class TypeInferenceEngineImpl extends TypeInferenceEngine {
}
var namedParameters = methodNode.procedure.function.namedParameters;
for (int i = 0; i < namedParameters.length; i++) {
- if (KernelVariableDeclaration.isImplicitlyTyped(namedParameters[i])) {
+ if (ShadowVariableDeclaration.isImplicitlyTyped(namedParameters[i])) {
var name = namedParameters[i].name;
var inferredType = matchTypes(
overriddenTypes.map((type) => getNamedParameterType(type, name)));
« no previous file with comments | « pkg/front_end/lib/src/fasta/source/source_loader.dart ('k') | pkg/front_end/lib/src/fasta/type_inference/type_inferrer.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698