rustc_codegen_ssa::back::archive

Trait ArchiveBuilderBuilder

source
pub trait ArchiveBuilderBuilder {
    // Required method
    fn new_archive_builder<'a>(
        &self,
        sess: &'a Session,
    ) -> Box<dyn ArchiveBuilder + 'a>;

    // Provided methods
    fn create_dll_import_lib(
        &self,
        sess: &Session,
        lib_name: &str,
        import_name_and_ordinal_vector: Vec<(String, Option<u16>)>,
        output_path: &Path,
    ) { ... }
    fn extract_bundled_libs<'a>(
        &'a self,
        rlib: &'a Path,
        outdir: &Path,
        bundled_lib_file_names: &FxIndexSet<Symbol>,
    ) -> Result<(), ExtractBundledLibsError<'a>> { ... }
}

Required Methods§

source

fn new_archive_builder<'a>( &self, sess: &'a Session, ) -> Box<dyn ArchiveBuilder + 'a>

Provided Methods§

source

fn create_dll_import_lib( &self, sess: &Session, lib_name: &str, import_name_and_ordinal_vector: Vec<(String, Option<u16>)>, output_path: &Path, )

Creates a DLL Import Library https://docs.microsoft.com/en-us/windows/win32/dlls/dynamic-link-library-creation#creating-an-import-library. and returns the path on disk to that import library. This functions doesn’t take self so that it can be called from linker_with_args, which is specialized on ArchiveBuilder but doesn’t take or create an instance of that type.

source

fn extract_bundled_libs<'a>( &'a self, rlib: &'a Path, outdir: &Path, bundled_lib_file_names: &FxIndexSet<Symbol>, ) -> Result<(), ExtractBundledLibsError<'a>>

Implementors§