class Crystalline::Workspace
- Crystalline::Workspace
- Reference
- Object
Defined in:
crystalline/workspace.crConstructors
Class Method Summary
-
.compilation_lock
Allow one compilation at a time.
Instance Method Summary
- #close_document(server : LSP::Server, params : LSP::DidCloseTextDocumentParams)
-
#compile(server : LSP::Server, file_uri : URI, *, in_memory = false, ignore_diagnostics = server.client_capabilities.ignore_diagnostics?, ignore_cached_result = false, do_not_cache_result = false, wants_doc = false, text_overrides = nil, fail_fast = false, top_level = false, discard_nil_cached_result = false)
Use the crystal compiler to typecheck the program.
- #completion(server : LSP::Server, file_uri : URI, position : LSP::Position, trigger_character : String | Nil)
- #definitions(server : LSP::Server, file_uri : URI, position : LSP::Position)
- #document_symbols(server : LSP::Server, file_uri : URI)
- #format_document(params : LSP::DocumentFormattingParams) : Tuple(String, TextDocument) | Nil
- #format_document(params : LSP::DocumentRangeFormattingParams) : Tuple(String, TextDocument) | Nil
- #hover(server : LSP::Server, file_uri : URI, position : LSP::Position)
- #open_document(params : LSP::DidOpenTextDocumentParams)
-
#opened_documents : Hash(String, Crystalline::TextDocument)
A list of documents that are openened in the text editor.
-
#projects : Array(Crystalline::Project)
A list of projects in this workspace
-
#recalculate_dependencies(server, project)
Run a top level semantic analysis to compute dependencies.
-
#root_uri : URI | Nil
The workspace filesystem uri.
- #save_document(server : LSP::Server, params : LSP::DidSaveTextDocumentParams)
- #update_document(server : LSP::Server, params : LSP::DidChangeTextDocumentParams)
Constructor Detail
Class Method Detail
Instance Method Detail
def compile(server : LSP::Server, file_uri : URI, *, in_memory = false, ignore_diagnostics = server.client_capabilities.ignore_diagnostics?, ignore_cached_result = false, do_not_cache_result = false, wants_doc = false, text_overrides = nil, fail_fast = false, top_level = false, discard_nil_cached_result = false)
#
Use the crystal compiler to typecheck the program.
def completion(server : LSP::Server, file_uri : URI, position : LSP::Position, trigger_character : String | Nil)
#
def format_document(params : LSP::DocumentFormattingParams) : Tuple(String, TextDocument) | Nil
#
def format_document(params : LSP::DocumentRangeFormattingParams) : Tuple(String, TextDocument) | Nil
#
def opened_documents : Hash(String, Crystalline::TextDocument)
#
A list of documents that are openened in the text editor.
def recalculate_dependencies(server, project)
#
Run a top level semantic analysis to compute dependencies.
def update_document(server : LSP::Server, params : LSP::DidChangeTextDocumentParams)
#