Struct rustc_driver::RunCompiler
source · pub struct RunCompiler<'a, 'b> {
pub(crate) at_args: &'a [String],
pub(crate) callbacks: &'b mut (dyn Callbacks + Send),
pub(crate) file_loader: Option<Box<dyn FileLoader + Send + Sync>>,
pub(crate) emitter: Option<Box<dyn Write + Send>>,
pub(crate) make_codegen_backend: Option<Box<dyn FnOnce(&Options) -> Box<dyn CodegenBackend> + Send>>,
}
Expand description
This is the primary entry point for rustc.
Fields
at_args: &'a [String]
callbacks: &'b mut (dyn Callbacks + Send)
file_loader: Option<Box<dyn FileLoader + Send + Sync>>
emitter: Option<Box<dyn Write + Send>>
make_codegen_backend: Option<Box<dyn FnOnce(&Options) -> Box<dyn CodegenBackend> + Send>>
Implementations
sourceimpl<'a, 'b> RunCompiler<'a, 'b>
impl<'a, 'b> RunCompiler<'a, 'b>
pub fn new(
at_args: &'a [String],
callbacks: &'b mut (dyn Callbacks + Send)
) -> Self
sourcepub fn set_make_codegen_backend(
&mut self,
make_codegen_backend: Option<Box<dyn FnOnce(&Options) -> Box<dyn CodegenBackend> + Send>>
) -> &mut Self
pub fn set_make_codegen_backend(
&mut self,
make_codegen_backend: Option<Box<dyn FnOnce(&Options) -> Box<dyn CodegenBackend> + Send>>
) -> &mut Self
Set a custom codegen backend.
Used by cg_clif.
sourcepub fn set_emitter(
&mut self,
emitter: Option<Box<dyn Write + Send>>
) -> &mut Self
pub fn set_emitter(
&mut self,
emitter: Option<Box<dyn Write + Send>>
) -> &mut Self
Emit diagnostics to the specified location.
Used by RLS.
sourcepub fn set_file_loader(
&mut self,
file_loader: Option<Box<dyn FileLoader + Send + Sync>>
) -> &mut Self
pub fn set_file_loader(
&mut self,
file_loader: Option<Box<dyn FileLoader + Send + Sync>>
) -> &mut Self
Load files from sources other than the file system.
Used by RLS.
Auto Trait Implementations
impl<'a, 'b> !RefUnwindSafe for RunCompiler<'a, 'b>
impl<'a, 'b> Send for RunCompiler<'a, 'b>
impl<'a, 'b> !Sync for RunCompiler<'a, 'b>
impl<'a, 'b> Unpin for RunCompiler<'a, 'b>
impl<'a, 'b> !UnwindSafe for RunCompiler<'a, 'b>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 80 bytes