================
@@ -986,6 +986,34 @@ class LLDB_API SBTarget {
lldb::SBMutex GetAPIMutex() const;
+ /// Register a scripted frame provider for this target.
+ ///
+ /// \param[in] class_name
+ /// The name of the Python class that implements the frame provider.
+ ///
+ /// \param[in] args_dict
+ /// A dictionary of arguments to pass to the frame provider class.
+ ///
+ /// \return
+ /// An error object indicating success or failure.
+ lldb::SBError RegisterScriptedFrameProvider(const char *class_name,
+ lldb::SBStructuredData
args_dict);
+
+ /// Remove a scripted frame provider from this target by name.
+ ///
+ /// \param[in] provider_name
+ /// The name of the frame provider class to remove.
+ ///
+ /// \return
+ /// An error object indicating success or failure.
+ lldb::SBError RemoveScriptedFrameProvider(const char *provider_name);
+
+ /// Clear the scripted frame provider for this target.
----------------
medismailben wrote:
See https://github.com/llvm/llvm-project/pull/161870#discussion_r2482534752
Currently the target can have multiple scripted frame provider descriptor
however the threads can only have 1 provider at a time. I'm planning on being
able to chain providers (both internal plugins & scripted implementations) in a
follow-up. I actually think this API should be called
`RemoveSyntheticFrameProvider` not `Scripted` because the user might want to
disable an lldb internal frame provider.
https://github.com/llvm/llvm-project/pull/161870
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits