Implement SourceConverter (#26)

This commit is contained in:
Shiyu
2025-01-10 19:26:41 +08:00
committed by GitHub
parent b7d58d03f4
commit c1c1930757
20 changed files with 343 additions and 348 deletions

View File

@@ -1,27 +1,28 @@
#include "Basic/SourceConverter.h"
#include "Server/Server.h"
namespace clice {
async::promise<void> Server::onDidOpen(const proto::DidOpenTextDocumentParams& params) {
auto path = URI::resolve(params.textDocument.uri);
auto path = SourceConverter::toPath(params.textDocument.uri);
llvm::StringRef content = params.textDocument.text;
co_await scheduler.update(path, content, synchronizer);
}
async::promise<void> Server::onDidChange(const proto::DidChangeTextDocumentParams& document) {
auto path = URI::resolve(document.textDocument.uri);
auto path = SourceConverter::toPath(document.textDocument.uri);
llvm::StringRef content = document.contentChanges[0].text;
co_await scheduler.update(path, content, synchronizer);
}
async::promise<void> Server::onDidSave(const proto::DidSaveTextDocumentParams& document) {
auto path = URI::resolve(document.textDocument.uri);
auto path = SourceConverter::toPath(document.textDocument.uri);
/// co_await scheduler.save(path);
co_return;
}
async::promise<void> Server::onDidClose(const proto::DidCloseTextDocumentParams& document) {
auto path = URI::resolve(document.textDocument.uri);
auto path = SourceConverter::toPath(document.textDocument.uri);
/// co_await scheduler.close(path);
co_return;
}