Struct mapfile_parser::MapFile
source · pub struct MapFile {
pub segments_list: Vec<Segment>,
}Fields§
§segments_list: Vec<Segment>Implementations§
source§impl MapFile
impl MapFile
pub fn new() -> Self
sourcepub fn read_map_file(&mut self, map_path: PathBuf)
pub fn read_map_file(&mut self, map_path: PathBuf)
Opens the mapfile pointed by the mapPath argument and parses it.
The format of the map will be guessed based on its contents.
Currently supported map formats:
- GNU ld
- clang ld.lld
sourcepub fn parse_map_contents(&mut self, map_contents: String)
pub fn parse_map_contents(&mut self, map_contents: String)
Parses the contents of the map.
The mapContents argument must contain the contents of a mapfile.
The format of the map will be guessed based on its contents.
Currently supported mapfile formats:
- GNU ld
- clang ld.lld
sourcepub fn parse_map_contents_gnu(&mut self, map_contents: String)
pub fn parse_map_contents_gnu(&mut self, map_contents: String)
Parses the contents of a GNU ld map.
The mapContents argument must contain the contents of a GNU ld mapfile.
sourcepub fn parse_map_contents_lld(&mut self, map_contents: String)
pub fn parse_map_contents_lld(&mut self, map_contents: String)
Parses the contents of a clang ld.lld map.
The mapContents argument must contain the contents of a clang ld.lld mapfile.
pub fn filter_by_section_type(&self, section_type: &str) -> MapFile
pub fn get_every_file_except_section_type(&self, section_type: &str) -> MapFile
pub fn find_symbol_by_name(&self, sym_name: &str) -> Option<FoundSymbolInfo>
pub fn find_symbol_by_vram_or_vrom( &self, address: u64 ) -> Option<FoundSymbolInfo>
pub fn find_lowest_differing_symbol( &self, other_map_file: MapFile ) -> Option<(Symbol, File, Option<Symbol>)>
pub fn mix_folders(&self) -> MapFile
pub fn get_progress( &self, asm_path: PathBuf, nonmatchings: PathBuf, aliases: HashMap<String, String>, path_index: usize ) -> (ProgressStats, HashMap<String, ProgressStats>)
sourcepub fn compare_files_and_symbols(
&self,
other_map_file: MapFile,
check_other_on_self: bool
) -> MapsComparisonInfo
pub fn compare_files_and_symbols( &self, other_map_file: MapFile, check_other_on_self: bool ) -> MapsComparisonInfo
Useful for finding bss reorders
pub fn to_csv(&self, print_vram: bool, skip_without_symbols: bool) -> String
pub fn to_csv_symbols(&self) -> String
pub fn print_as_csv(&self, print_vram: bool, skip_without_symbols: bool)
pub fn print_symbols_csv(&self)
Trait Implementations§
Auto Trait Implementations§
impl RefUnwindSafe for MapFile
impl Send for MapFile
impl Sync for MapFile
impl Unpin for MapFile
impl UnwindSafe for MapFile
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more