diff options
Diffstat (limited to 'include/lldb/Breakpoint/BreakpointResolverAddress.h')
-rw-r--r-- | include/lldb/Breakpoint/BreakpointResolverAddress.h | 81 |
1 files changed, 41 insertions, 40 deletions
diff --git a/include/lldb/Breakpoint/BreakpointResolverAddress.h b/include/lldb/Breakpoint/BreakpointResolverAddress.h index 8ec1e39e52ab..6d2d505811f9 100644 --- a/include/lldb/Breakpoint/BreakpointResolverAddress.h +++ b/include/lldb/Breakpoint/BreakpointResolverAddress.h @@ -20,63 +20,64 @@ namespace lldb_private { //---------------------------------------------------------------------- -/// @class BreakpointResolverAddress BreakpointResolverAddress.h "lldb/Breakpoint/BreakpointResolverAddress.h" -/// @brief This class sets breakpoints on a given Address. This breakpoint only takes +/// @class BreakpointResolverAddress BreakpointResolverAddress.h +/// "lldb/Breakpoint/BreakpointResolverAddress.h" +/// @brief This class sets breakpoints on a given Address. This breakpoint only +/// takes /// once, and then it won't attempt to reset itself. //---------------------------------------------------------------------- -class BreakpointResolverAddress: - public BreakpointResolver -{ +class BreakpointResolverAddress : public BreakpointResolver { public: - BreakpointResolverAddress (Breakpoint *bkpt, - const Address &addr); + BreakpointResolverAddress(Breakpoint *bkpt, const Address &addr); - BreakpointResolverAddress (Breakpoint *bkpt, - const Address &addr, - const FileSpec &module_spec); + BreakpointResolverAddress(Breakpoint *bkpt, const Address &addr, + const FileSpec &module_spec); - ~BreakpointResolverAddress() override; + ~BreakpointResolverAddress() override; - void - ResolveBreakpoint (SearchFilter &filter) override; + static BreakpointResolver * + CreateFromStructuredData(Breakpoint *bkpt, + const StructuredData::Dictionary &options_dict, + Error &error); - void - ResolveBreakpointInModules (SearchFilter &filter, - ModuleList &modules) override; + StructuredData::ObjectSP SerializeToStructuredData() override; - Searcher::CallbackReturn - SearchCallback (SearchFilter &filter, - SymbolContext &context, - Address *addr, - bool containing) override; + void ResolveBreakpoint(SearchFilter &filter) override; - Searcher::Depth - GetDepth () override; + void ResolveBreakpointInModules(SearchFilter &filter, + ModuleList &modules) override; - void - GetDescription (Stream *s) override; + Searcher::CallbackReturn SearchCallback(SearchFilter &filter, + SymbolContext &context, Address *addr, + bool containing) override; - void - Dump (Stream *s) const override; + Searcher::Depth GetDepth() override; - /// Methods for support type inquiry through isa, cast, and dyn_cast: - static inline bool classof(const BreakpointResolverAddress *) { return true; } - static inline bool classof(const BreakpointResolver *V) { - return V->getResolverID() == BreakpointResolver::AddressResolver; - } + void GetDescription(Stream *s) override; - lldb::BreakpointResolverSP - CopyForBreakpoint (Breakpoint &breakpoint) override; + void Dump(Stream *s) const override; + + /// Methods for support type inquiry through isa, cast, and dyn_cast: + static inline bool classof(const BreakpointResolverAddress *) { return true; } + static inline bool classof(const BreakpointResolver *V) { + return V->getResolverID() == BreakpointResolver::AddressResolver; + } + + lldb::BreakpointResolverSP CopyForBreakpoint(Breakpoint &breakpoint) override; protected: - Address m_addr; // The address - may be Section Offset or may be just an offset - lldb::addr_t m_resolved_addr; // The current value of the resolved load address for this breakpoint, - FileSpec m_module_filespec; // If this filespec is Valid, and m_addr is an offset, then it will be converted - // to a Section+Offset address in this module, whenever that module gets around to - // being loaded. + Address + m_addr; // The address - may be Section Offset or may be just an offset + lldb::addr_t m_resolved_addr; // The current value of the resolved load + // address for this breakpoint, + FileSpec m_module_filespec; // If this filespec is Valid, and m_addr is an + // offset, then it will be converted + // to a Section+Offset address in this module, whenever that module gets + // around to + // being loaded. private: - DISALLOW_COPY_AND_ASSIGN(BreakpointResolverAddress); + DISALLOW_COPY_AND_ASSIGN(BreakpointResolverAddress); }; } // namespace lldb_private |