Skip to content

Commit 28be3ea

Browse files
stereotype441dart-scoped@luci-project-accounts.iam.gserviceaccount.com
authored andcommitted
[analyzer] Uniformly use dispatchCollectionElement.
Modifies the resolver so that all recursive visits of collection elements go through `ResolverVisitor.dispatchCollectionElement`. This prepares for a follow-up CL in which I will be adding debugging checks to `ResolverVisitor.dispatchCollectionElement` to help ensure that the proper offsets are propagated to the flow analysis log. Part of #63816. Change-Id: I6068d0dde7368ce486ba60bdeaa8fecb6a6a6964 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/532120 Reviewed-by: Konstantin Shcheglov <scheglov@google.com> Commit-Queue: Paul Berry <paulberry@google.com>
1 parent c5e71fd commit 28be3ea

2 files changed

Lines changed: 5 additions & 4 deletions

File tree

pkg/analyzer/lib/src/dart/resolver/for_resolver.dart

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ class ForResolver {
2828
void resolveElement(ForElementImpl node, CollectionLiteralContext? context) {
2929
var forLoopParts = node.forLoopParts;
3030
void visitBody() {
31-
node.body2.resolveElement(_resolver, context);
32-
_resolver.popRewrite();
31+
_resolver.dispatchCollectionElement(node.body2, context);
3332
}
3433

3534
if (forLoopParts is ForPartsImpl) {

pkg/analyzer/lib/src/dart/resolver/typed_literal_resolver.dart

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -666,8 +666,10 @@ class TypedLiteralResolver {
666666
CollectionLiteralContext? context,
667667
) {
668668
for (var element in elements) {
669-
(element as CollectionElementImpl).resolveElement(_resolver, context);
670-
_resolver.popRewrite();
669+
_resolver.dispatchCollectionElement(
670+
element as CollectionElementImpl,
671+
context,
672+
);
671673
}
672674
}
673675

0 commit comments

Comments
 (0)