[lsp] textDocument.references

This adds the "textDocument/references" capability to the language
server.

* For a library name, the locations of all the imports of that library
  are returned.
* For a type, type alias, or const, all the locations of instances of
  that type are returned (e.g. method params or struct/table/union
  fields). This also includes use as a type parameter, e.g. "Find all
  references of type `Foo`" would return an instance of `vector<Foo>`.

Test: go test ./...
Change-Id: I8b5149dfcbd5d1855a7546e09e2d7d2d469ba059
Reviewed-on: https://fuchsia-review.googlesource.com/c/fidl-misc/+/396493
Reviewed-by: Benjamin Prosnitz <bprosnitz@google.com>
Reviewed-by: Pascal Perez <pascallouis@google.com>
10 files changed
tree: 2cd4b6a9f4f2ada20b48f1dd53d158f0af64daf6
  1. fidl-lsp/
  2. fidldev/
  3. .gitignore
  4. AUTHORS
  5. CONTRIBUTING.md
  6. LICENSE
  7. PATENTS
  8. README.md
README.md

Fuchsia Open Source Template Repository

This repository is a template that we will use when creating new open source repositories for Fuchsia.