33 m_symtab_up = std::make_unique<lldb_private::Symtab>(
this);
38 m_sections_up = std::make_unique<lldb_private::SectionList>();
39 auto section_sp = std::make_shared<lldb_private::Section>(
44 section_sp->SetPermissions(ePermissionsReadable | ePermissionsExecutable);
46 unified_section_list.
AddSection(std::move(section_sp));
54 bool value_is_offset) {
55 assert(!value_is_offset);
67 s->
Format(
"Placeholder object file for {0} loaded at [{1:x}-{2:x})\n",
#define LLDB_PLUGIN_DEFINE(PluginName)
A minimal ObjectFile implementation providing a dummy object file for the cases when the real module ...
bool SetLoadAddress(lldb_private::Target &target, lldb::addr_t value, bool value_is_offset) override
Sets the load address for an entire module, assuming a rigid slide of sections, if possible in the im...
lldb_private::UUID GetUUID() override
Gets the UUID for this object file.
lldb_private::Address GetBaseAddress() override
Returns base address of this object file.
lldb_private::UUID m_uuid
void CreateSections(lldb_private::SectionList &unified_section_list) override
lldb_private::ArchSpec GetArchitecture() override
Get the ArchSpec for this object file.
lldb_private::ArchSpec m_arch
ObjectFilePlaceholder(const lldb::ModuleSP &module_sp, const lldb_private::ModuleSpec &module_spec, lldb::addr_t base, lldb::addr_t size)
void Dump(lldb_private::Stream *s) override
Dump a description of this object to a Stream.
A section + offset based address class.
A uniqued constant string class.
lldb::ModuleSP GetModule() const
Get const accessor for the module pointer.
std::unique_ptr< lldb_private::SectionList > m_sections_up
ObjectFile(const lldb::ModuleSP &module_sp, const FileSpec *file_spec_ptr, lldb::offset_t file_offset, lldb::offset_t length, lldb::DataBufferSP data_sp, lldb::offset_t data_offset)
Construct with a parent module, offset, and header data.
std::unique_ptr< lldb_private::Symtab > m_symtab_up
virtual FileSpec & GetFileSpec()
Get accessor to the object file specification.
size_t AddSection(const lldb::SectionSP §ion_sp)
A stream class that can stream formatted output to a file.
void Format(const char *format, Args &&... args)
bool SetSectionLoadAddress(const lldb::SectionSP §ion, lldb::addr_t load_addr, bool warn_multiple=false)
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::Module > ModuleSP