Trait rustc_codegen_ssa::back::archive::ArchiveBuilder
source · [−]pub trait ArchiveBuilder<'a> {
fn new(sess: &'a Session, output: &Path) -> Self;
fn add_file(&mut self, path: &Path);
fn add_archive<F>(&mut self, archive: &Path, skip: F) -> Result<()>
where
F: FnMut(&str) -> bool + 'static;
fn build(self) -> bool;
fn sess(&self) -> &Session;
fn create_dll_import_lib(
sess: &Session,
lib_name: &str,
dll_imports: &[DllImport],
tmpdir: &Path
) -> PathBuf;
fn inject_dll_import_lib(
&mut self,
lib_name: &str,
dll_imports: &[DllImport],
tmpdir: &MaybeTempDir
) { ... }
}Required Methods
fn add_archive<F>(&mut self, archive: &Path, skip: F) -> Result<()> where
F: FnMut(&str) -> bool + 'static,
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.
Provided Methods
fn inject_dll_import_lib(
&mut self,
lib_name: &str,
dll_imports: &[DllImport],
tmpdir: &MaybeTempDir
)
fn inject_dll_import_lib(
&mut self,
lib_name: &str,
dll_imports: &[DllImport],
tmpdir: &MaybeTempDir
)
Creates a DLL Import Library https://docs.microsoft.com/en-us/windows/win32/dlls/dynamic-link-library-creation#creating-an-import-library and adds it to the current compilation’s set of archives.