Skip to content

Commit 6be3fa5

Browse files
scheglovCommit Queue
authored andcommitted
Fine. Separate declaredMembers and interface.
We need data similar to `Interface` from inheritance manager to record requirements, so this CL starts adding this data. Change-Id: I81902305de7835f679d81c354b75a9096dec6cf5 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/425584 Reviewed-by: Paul Berry <[email protected]> Commit-Queue: Konstantin Shcheglov <[email protected]>
1 parent 992cfb1 commit 6be3fa5

File tree

8 files changed

+5816
-3261
lines changed

8 files changed

+5816
-3261
lines changed

pkg/analyzer/lib/src/dart/element/inheritance_manager3.dart

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -326,10 +326,6 @@ class InheritanceManager3 {
326326
int forMixinIndex = -1,
327327
bool forSuper = false,
328328
}) {
329-
globalResultRequirements?.notifyInterfaceRequest(
330-
element: element.asElement2,
331-
nameObj: name,
332-
);
333329
var interface = getInterface(element);
334330
if (forSuper) {
335331
if (element is ExtensionTypeFragmentImpl) {
@@ -349,7 +345,14 @@ class InheritanceManager3 {
349345
if (concrete) {
350346
return interface.implemented[name];
351347
}
352-
return interface.map[name];
348+
349+
var result = interface.map[name];
350+
globalResultRequirements?.notifyInterfaceRequest(
351+
element: element.asElement2,
352+
nameObj: name,
353+
methodElement: result?.asElement2,
354+
);
355+
return result;
353356
}
354357

355358
/// Returns the result of [getMember4] with [type] substitution.

0 commit comments

Comments
 (0)