The RustOwl LSP specification
August 6, 2025 ยท View on GitHub
rustowl, is an LSP server which provides RustOwl information.
To display various types of decorations, RustOwl supports some custom methods from the client.
Here, we describe the specifications of those custom methods.
Types
Here, we describe the types we will use in this document.
OprType
"lifetime" | "imm_borrow" | "mut_borrow" | "move" | "call" | "outlive" | "shared_mut"
Decoration
{
"type": OprType,
"range": Range,
"hover_text": Option<String>,
"overlapped": bool
}
overlapped field indicates that the decoration is overlapped and should be hidden.
Methods
We describe the custom methods used in RustOwl.
rustowl/cursor
Request payload
{
"position": Position,
"document": {
"uri": DocumentUri
}
}
Response payload
{
"is_analyzed": bool,
"decorations": [Decoration]
}