tsl-devkit/lsp-server/src/provider/inlay_hint/resolve.cppm

42 lines
1.1 KiB
C++

module;
export module lsp.provider.inlay_hint.resolve;
import spdlog;
import std;
import lsp.protocol;
import lsp.codec.facade;
import lsp.provider.base.interface;
export namespace lsp::provider::inlay_hint
{
class Resolve : public AutoRegisterProvider<Resolve, IRequestProvider>
{
public:
static constexpr std::string_view kMethod = "inlayHint/resolve";
static constexpr std::string_view kProviderName = "InlayHintResolve";
Resolve() = default;
std::string ProvideResponse(const protocol::RequestMessage& request, ExecutionContext& context) override;
};
}
namespace lsp::provider::inlay_hint
{
std::string Resolve::ProvideResponse(const protocol::RequestMessage& request, [[maybe_unused]] ExecutionContext& context)
{
spdlog::debug("InlayHintResolveProvider: Providing response for method {}", request.method);
// TODO: Implement the actual request handling logic
// 1. Parse request parameters
// 2. Process the request using appropriate services
// 3. Return formatted response
return "{}"; // Placeholder response
}
}