[Lldb-commits] [lldb] [lldb-dap] Migrating DAP 'initialize' to new typed RequestHandler. (PR #133007)
Jonas Devlieghere via lldb-commits
lldb-commits at lists.llvm.org
Wed Mar 26 16:16:25 PDT 2025
================
@@ -1144,31 +1145,45 @@ lldb::SBValue Variables::FindVariable(uint64_t variablesReference,
return variable;
}
-llvm::StringMap<bool> DAP::GetCapabilities() {
- llvm::StringMap<bool> capabilities;
+bool DAP::isSupported(ClientFeature feature) {
+ return clientFeatures.find(feature) != clientFeatures.end();
+}
+
+protocol::Capabilities DAP::GetCapabilities() {
+ protocol::Capabilities capabilities;
- // Supported capabilities.
- capabilities["supportTerminateDebuggee"] = true;
- capabilities["supportsDataBreakpoints"] = true;
- capabilities["supportsDelayedStackTraceLoading"] = true;
- capabilities["supportsEvaluateForHovers"] = true;
- capabilities["supportsExceptionOptions"] = true;
- capabilities["supportsLogPoints"] = true;
- capabilities["supportsProgressReporting"] = true;
- capabilities["supportsSteppingGranularity"] = true;
- capabilities["supportsValueFormattingOptions"] = true;
+ // Supported capabilities that are not specific to a single request.
+ capabilities.supportedFeatures = {
+ AdapterFeature::supportsLogPoints,
+ AdapterFeature::supportsSteppingGranularity,
+ AdapterFeature::supportsValueFormattingOptions,
+ };
// Unsupported capabilities.
- capabilities["supportsGotoTargetsRequest"] = false;
- capabilities["supportsLoadedSourcesRequest"] = false;
- capabilities["supportsRestartFrame"] = false;
- capabilities["supportsStepBack"] = false;
+ // supportsGotoTargetsRequest, supportsLoadedSourcesRequest,
+ // supportsRestartFrame, supportsStepBack
----------------
JDevlieghere wrote:
Looking at the spec, it seems like we can just omit unsupported capabilities. Should we just remove this then?
https://github.com/llvm/llvm-project/pull/133007
More information about the lldb-commits
mailing list