spanForElement function
Returns a source span that spans the location where element
is defined.
Implementation
SourceSpan spanForElement(Element element) {
final Asset src = element.library.src;
final String source = src.readAsStringSync();
final SourceFile file = SourceFile.fromString(source, url: src.uri);
if (element.nameOffset < 0) {
if (element is FieldElement) {
if (element.getter != null) {
return spanForElement(element.getter!);
}
if (element.setter != null) {
return spanForElement(element.setter!);
}
}
}
final int nameOffset = element.nameOffset;
return file.span(nameOffset, nameOffset + element.nameLength);
}