findReferences function

Extension findReferences(
  1. ReferencesSource source, [
  2. FindReferencesOptions options = const FindReferencesOptions()
])

Set up find-references support.

The source callback is called when the user requests "find references" (via Shift+F12). It should return a ReferencesResult with all locations where the symbol at the given position is referenced.

Example:

findReferences(
  (state, pos) async {
    final refs = await lspClient.references(state.doc, pos);
    return ReferencesResult(refs.map((r) => DefinitionLocation(
      uri: r.uri,
      pos: r.range.start,
      line: r.line,
      column: r.column,
    )).toList());
  },
  FindReferencesOptions(
    display: (result, state, pos) {
      showReferencesPanel(result.references);
    },
  ),
)

Implementation

Extension findReferences(
  ReferencesSource source, [
  FindReferencesOptions options = const FindReferencesOptions(),
]) {
  final config = FindReferencesConfig(
    source: source,
    options: options,
  );

  return ExtensionList([
    findReferencesFacet.of(config),
  ]);
}