class LSProtocol::TextDocumentEdit

Overview

Describes textual changes on a text document. A TextDocumentEdit describes all changes on a document version Si and after they are applied move the document to version Si+1. So the creator of a TextDocumentEdit doesn't need to sort the array of edits or do any kind of ordering. However the edits must be non overlapping.

Included Modules

Defined in:

lsprotocol/types.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(edits : Array(AnnotatedTextEdit | SnippetTextEdit | TextEdit) | Nil, text_document : OptionalVersionedTextDocumentIdentifier | Nil) #

[View source]
def self.new(pull : JSON::PullParser) #

[View source]

Instance Method Detail

def edits : Array(AnnotatedTextEdit | SnippetTextEdit | TextEdit) #

The edits to be applied.

@since 3.16.0 - support for AnnotatedTextEdit. This is guarded using a client capability.

@since 3.18.0 - support for SnippetTextEdit. This is guarded using a client capability.


[View source]

The text document to change.


[View source]