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,
items: Vec<ImportLibraryItem>,
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§
fn new_archive_builder<'a>( &self, sess: &'a Session, ) -> Box<dyn ArchiveBuilder + 'a>
Provided Methods§
Sourcefn create_dll_import_lib(
&self,
sess: &Session,
lib_name: &str,
items: Vec<ImportLibraryItem>,
output_path: &Path,
)
fn create_dll_import_lib( &self, sess: &Session, lib_name: &str, items: Vec<ImportLibraryItem>, 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.