pub struct IsrCache<C = JsonCodec>where
C: Codec,{ /* private fields */ }
Expand description
Implementations§
Source§impl<C> IsrCache<C>where
C: Codec,
impl<C> IsrCache<C>where
C: Codec,
Sourcepub fn new(directory: impl Into<PathBuf>) -> Result<Self, Error>
pub fn new(directory: impl Into<PathBuf>) -> Result<Self, Error>
Creates a new IsrCache
instance, initializing it with the provided
directory. If the directory doesn’t exist, it attempts to create it.
Sourcepub fn entry_from_codeview(&self, codeview: CodeView) -> Result<Entry<C>, Error>
pub fn entry_from_codeview(&self, codeview: CodeView) -> Result<Entry<C>, Error>
Creates or retrieves a cached profile from a CodeView
debug
information structure.
If a profile for the given CodeView
information already exists in
the cache, its path is returned. Otherwise, the necessary PDB file is
downloaded, the profile is generated and stored in the cache, and its
path is returned.
Sourcepub fn entry_from_pe(&self, path: impl AsRef<Path>) -> Result<Entry<C>, Error>
pub fn entry_from_pe(&self, path: impl AsRef<Path>) -> Result<Entry<C>, Error>
Creates or retrieves a cached profile from a PE file.
Extracts the CodeView
debug information from the PE file and
delegates to entry_from_codeview
.
Creates or retrieves a cached profile based on a Linux kernel banner.
Parses the banner to determine the kernel version and downloads the necessary debug symbols and system map if not present in the cache. Generates and stores the profile, returning its path.