================
@@ -464,6 +466,24 @@ llvm::json::Value DebuggerStats::ReportStatistics(
}
}
+ if (include_plugins) {
+ json::Object plugin_stats;
+ for (const PluginNamespace &plugin_ns :
+ PluginManager::GetPluginNamespaces()) {
+ json::Array namespace_stats;
+
+ for (const RegisteredPluginInfo &plugin : plugin_ns.get_info()) {
+ json::Object plugin_json;
+ plugin_json.try_emplace("name", plugin.name);
+ plugin_json.try_emplace("enabled", plugin.enabled);
+
+ namespace_stats.emplace_back(std::move(plugin_json));
+ }
+ plugin_stats.try_emplace(plugin_ns.name, std::move(namespace_stats));
+ }
+ global_stats.try_emplace("plugins", std::move(plugin_stats));
+ }
+
----------------
clayborg wrote:
Move this code into the plug-in manager itself so that others can re-use it
from "plugin list --json". Might be nice to take a `pattern` to list only some
plug-ins.
```
json::Object PluginManager::GetJSON(StringRef pattern);
```
Where if pattern in empty, it will match everything and the JSON will contain
everything, but if it contains "system-runtime" then it will return JSON for
only that pattern. Make this easy to plug-in to "plugin list --json"
https://github.com/llvm/llvm-project/pull/134418
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits