Struct rustc_codegen_ssa::back::write::CodegenContext[−][src]

pub struct CodegenContext<B: WriteBackendMethods> {
Show fields pub backend: B, pub prof: SelfProfilerRef, pub lto: Lto, pub no_landing_pads: bool, pub save_temps: bool, pub fewer_names: bool, pub exported_symbols: Option<Arc<ExportedSymbols>>, pub opts: Arc<Options>, pub crate_types: Vec<CrateType>, pub each_linked_rlib_for_lto: Vec<(CrateNum, PathBuf)>, pub output_filenames: Arc<OutputFilenames>, pub regular_module_config: Arc<ModuleConfig>, pub metadata_module_config: Arc<ModuleConfig>, pub allocator_module_config: Arc<ModuleConfig>, pub tm_factory: TargetMachineFactoryFn<B>, pub msvc_imps_needed: bool, pub is_pe_coff: bool, pub target_can_use_split_dwarf: bool, pub target_pointer_width: u32, pub target_arch: String, pub debuginfo: DebugInfo, pub split_debuginfo: SplitDebuginfo, pub total_cgus: usize, pub diag_emitter: SharedEmitter, pub remark: Passes, pub worker: usize, pub incr_comp_session_dir: Option<PathBuf>, pub cgu_reuse_tracker: CguReuseTracker, pub coordinator_send: Sender<Box<dyn Any + Send>>,
}

Additional resources used by optimize_and_codegen (not module specific)

Fields

backend: Bprof: SelfProfilerReflto: Ltono_landing_pads: boolsave_temps: boolfewer_names: boolexported_symbols: Option<Arc<ExportedSymbols>>opts: Arc<Options>crate_types: Vec<CrateType>each_linked_rlib_for_lto: Vec<(CrateNum, PathBuf)>output_filenames: Arc<OutputFilenames>regular_module_config: Arc<ModuleConfig>metadata_module_config: Arc<ModuleConfig>allocator_module_config: Arc<ModuleConfig>tm_factory: TargetMachineFactoryFn<B>msvc_imps_needed: boolis_pe_coff: booltarget_can_use_split_dwarf: booltarget_pointer_width: u32target_arch: Stringdebuginfo: DebugInfosplit_debuginfo: SplitDebuginfototal_cgus: usizediag_emitter: SharedEmitterremark: Passesworker: usizeincr_comp_session_dir: Option<PathBuf>cgu_reuse_tracker: CguReuseTrackercoordinator_send: Sender<Box<dyn Any + Send>>

Implementations

impl<B: WriteBackendMethods> CodegenContext<B>[src]

pub fn create_diag_handler(&self) -> Handler[src]

pub fn config(&self, kind: ModuleKind) -> &ModuleConfig[src]

Trait Implementations

impl<B: Clone + WriteBackendMethods> Clone for CodegenContext<B>[src]

Auto Trait Implementations

impl<B> !RefUnwindSafe for CodegenContext<B>

impl<B> Send for CodegenContext<B> where
    B: Send, 

impl<B> !Sync for CodegenContext<B>

impl<B> Unpin for CodegenContext<B> where
    B: Unpin, 

impl<B> !UnwindSafe for CodegenContext<B>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone, 
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.