Struct rustc_interface::interface::Compiler [−][src]
pub struct Compiler {
pub(crate) sess: Lrc<Session>,
codegen_backend: Lrc<Box<dyn CodegenBackend>>,
pub(crate) input: Input,
pub(crate) input_path: Option<PathBuf>,
pub(crate) output_dir: Option<PathBuf>,
pub(crate) output_file: Option<PathBuf>,
pub(crate) register_lints: Option<Box<dyn Fn(&Session, &mut LintStore) + Send + Sync>>,
pub(crate) override_queries: Option<fn(_: &Session, _: &mut Providers, _: &mut Providers)>,
}Expand description
Represents a compiler session.
Can be used to run rustc_interface queries.
Created by passing Config to run_compiler.
Fields
sess: Lrc<Session>codegen_backend: Lrc<Box<dyn CodegenBackend>>input: Inputinput_path: Option<PathBuf>output_dir: Option<PathBuf>output_file: Option<PathBuf>register_lints: Option<Box<dyn Fn(&Session, &mut LintStore) + Send + Sync>>override_queries: Option<fn(_: &Session, _: &mut Providers, _: &mut Providers)>Implementations
impl Compiler[src]
impl Compiler[src]pub fn session(&self) -> &Lrc<Session>[src]
pub fn codegen_backend(&self) -> &Lrc<Box<dyn CodegenBackend>>[src]
pub fn input(&self) -> &Input[src]
pub fn output_dir(&self) -> &Option<PathBuf>[src]
pub fn output_file(&self) -> &Option<PathBuf>[src]
pub fn register_lints(
&self
) -> &Option<Box<dyn Fn(&Session, &mut LintStore) + Send + Sync>>[src]
&self
) -> &Option<Box<dyn Fn(&Session, &mut LintStore) + Send + Sync>>
pub fn build_output_filenames(
&self,
sess: &Session,
attrs: &[Attribute]
) -> OutputFilenames[src]
&self,
sess: &Session,
attrs: &[Attribute]
) -> OutputFilenames
impl Compiler[src]
impl Compiler[src]