LLDB  mainline
Public Types | Public Member Functions | List of all members
lldb_private::ModuleCache Class Reference

A module cache class. More...

#include "lldb/Target/ModuleCache.h"

Public Types

using ModuleDownloader = std::function< Status(const ModuleSpec &, const FileSpec &)>
using SymfileDownloader = std::function< Status(const lldb::ModuleSP &, const FileSpec &)>

Public Member Functions

Status GetAndPut (const FileSpec &root_dir_spec, const char *hostname, const ModuleSpec &module_spec, const ModuleDownloader &module_downloader, const SymfileDownloader &symfile_downloader, lldb::ModuleSP &cached_module_sp, bool *did_create_ptr)

Detailed Description

A module cache class.

Caches locally modules that are downloaded from remote targets. Each cached module maintains 2 views:

UUID views stores a real module file, whereas Sysroot view holds a symbolic link to UUID-view file.

Example: UUID view : /tmp/lldb/remote- linux/.cache/30C94DC6-6A1F-E951-80C3-D68D2B89E576-D5AE213C/libc.so.6 Sysroot view: /tmp/lldb/remote-linux/ubuntu/lib/x86_64-linux-gnu/libc.so.6

Definition at line 47 of file ModuleCache.h.

Member Typedef Documentation

◆ ModuleDownloader

using lldb_private::ModuleCache::ModuleDownloader = std::function<Status(const ModuleSpec &, const FileSpec &)>

Definition at line 50 of file ModuleCache.h.

◆ SymfileDownloader

using lldb_private::ModuleCache::SymfileDownloader = std::function<Status(const lldb::ModuleSP &, const FileSpec &)>

Definition at line 52 of file ModuleCache.h.

Member Function Documentation

◆ GetAndPut()

Status ModuleCache::GetAndPut ( const FileSpec root_dir_spec,
const char *  hostname,
const ModuleSpec module_spec,
const ModuleDownloader module_downloader,
const SymfileDownloader symfile_downloader,
lldb::ModuleSP &  cached_module_sp,
bool *  did_create_ptr 

The documentation for this class was generated from the following files: