Skip to content
This repository was archived by the owner on Mar 19, 2024. It is now read-only.

Test code provided by alexheretic to filter variable type #65

Merged
merged 2 commits into from
Mar 6, 2018
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions lib/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -577,6 +577,23 @@ class RustLanguageClient extends AutoLanguageClient {
throw new Error("failed to start server: " + e)
}
}

// Extends the outline provider by filtering the type variable, which is s
// only used for local variables by RLS. This makes the outline view
// cleaner and more useful.
provideOutlines() {
let provide = super.provideOutlines()
let superOutline = provide.getOutline

provide.getOutline = async (...args) => {
let outline = await superOutline.apply(this, args)
outline.outlineTrees = outline.outlineTrees
.filter(o => o.icon !== "type-variable")
return outline
}

return provide
}
}

module.exports = new RustLanguageClient()