canonicalModelElement property
Implementation
@override
late final ModelElement? canonicalModelElement = () {
final canonicalEnclosingContainer = this.canonicalEnclosingContainer;
if (canonicalEnclosingContainer == null) {
return null;
}
// TODO(jcollins-g): factor out extension logic into [Extendable]
if (canonicalEnclosingContainer is Extension) {
return this;
}
return canonicalEnclosingContainer.allCanonicalModelElements
.firstWhereOrNull((m) =>
m.name == name && m.isPropertyAccessor == isPropertyAccessor);
}();