splhack added inline comments.
================ Comment at: lldb/include/lldb/Target/Platform.h:884-887 + typedef std::function<Status(const ModuleSpec &module_spec, + FileSpec &module_file_spec, + FileSpec &symbol_file_spec)> + LocateModuleCallback; ---------------- clayborg wrote: > I think we still need a baton for the callback so clients can register a > callback + void *. Yes, callback and baton(`void *`) are retained by SBPlatform. The detailed flow is here https://reviews.llvm.org/D153735#4491892 ================ Comment at: lldb/include/lldb/Target/Platform.h:944 const std::unique_ptr<ModuleCache> m_module_cache; + LocateModuleCallback m_locate_module_callback; ---------------- splhack wrote: > clayborg wrote: > > We probably need a baton still. In order to make this work for python, we > > need to be able to set a callback and a baton for the python callable? > @clayborg Yes, in D153735, both the callback and the baton are captured and > retained by SBPlatform. The reason of why SBPlatform captures and retains the > callback and the baton is the SBPlatformLocateModuleCallback type contains > SBModuleSpec type and SBFileSpec type in the argument. Which are not > available in Platform.h. > > ``` > typedef SBError (*SBPlatformLocateModuleCallback)( > void *baton, const SBModuleSpec &module_spec, SBFileSpec > &module_file_spec, > SBFileSpec &symbol_file_spec); > ``` commented the detailed callback and baton flow here. https://reviews.llvm.org/D153735#4491892 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D153734/new/ https://reviews.llvm.org/D153734 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits