0.0.1 |
|
---|
#189 in #language-server
28KB
722 lines
lsif-rust
Language Server Index Format (LSIF) is a standard format for language servers or other programming tools to dump their knowledge about a code workspace (article). lsif-rust
is an attempt to implement such a tool for Rust since none exists for the language as listed on lsif.dev.
Installation
cargo install lsif-rust
Usage
Run the command in the same directory as Cargo.toml
. Requires nightly Rust (for -Z save-analysis
).
lsif-rust 0.0.1
LSIF Indexer for Rust
USAGE:
lsif-rust [OPTIONS]
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
OPTIONS:
-o, --output <FILE> The output file. Outputs to stdout if unspecified.
--output-format <FORMAT> Specifies the output format. [default: line] [possible values: line, json]
Progress
lsif-rust
is under heavy development and very much still a WIP.
Checklisted below are the features that have been implemented:
-
textdocument/definition
-
textdocument/declaration
-
textdocument/hover
-
textdocument/references
-
textdocument/implementation
-
textdocument/typeDefinition
-
textdocument/foldingRange
-
textdocument/documentLink
-
textdocument/documentSymbol
-
textdocument/diagnostic
Other features (non-exhaustive):
- Supports Cargo workspaces
Related
Dependencies
~50MB
~1M SLoC