Compilation

Struct Compilation 

Source
pub struct Compilation {
Show 58 fields pub hot_index: u32, pub records: Option<CompilationRecords>, pub options: Arc<CompilerOptions>, pub entries: Entry, pub global_entry: EntryData, pub dependency_factories: FxHashMap<DependencyType, Arc<dyn ModuleFactory>>, pub dependency_templates: FxHashMap<DependencyTemplateType, Arc<dyn DependencyTemplate>>, pub runtime_modules: IdentifierMap<Box<dyn RuntimeModule>>, pub runtime_modules_hash: IdentifierMap<RspackHashDigest>, pub runtime_modules_code_generation_source: IdentifierMap<BoxSource>, pub chunk_graph: ChunkGraph, pub chunk_by_ukey: ChunkByUkey, pub chunk_group_by_ukey: ChunkGroupByUkey, pub entrypoints: IndexMap<String, ChunkGroupUkey>, pub async_entrypoints: Vec<ChunkGroupUkey>, pub emitted_assets: DashSet<String, BuildHasherDefault<FxHasher>>, pub plugin_driver: Arc<PluginDriver>, pub buildtime_plugin_driver: Arc<PluginDriver>, pub resolver_factory: Arc<ResolverFactory>, pub loader_resolver_factory: Arc<ResolverFactory>, pub named_chunks: FxHashMap<String, ChunkUkey>, pub named_chunk_groups: FxHashMap<String, ChunkGroupUkey>, pub runtime_template: RuntimeTemplate, pub async_modules_artifact: AsyncModulesArtifact, pub dependencies_diagnostics_artifact: DependenciesDiagnosticsArtifact, pub side_effects_optimize_artifact: SideEffectsOptimizeArtifact, pub module_ids_artifact: ModuleIdsArtifact, pub chunk_ids_artifact: ChunkIdsArtifact, pub code_generation_results: BindingCell<CodeGenerationResults>, pub cgm_hash_artifact: CgmHashArtifact, pub cgm_runtime_requirements_artifact: CgmRuntimeRequirementsArtifact, pub cgc_runtime_requirements_artifact: CgcRuntimeRequirementsArtifact, pub chunk_hashes_artifact: ChunkHashesArtifact, pub chunk_render_artifact: ChunkRenderArtifact, pub module_graph_cache_artifact: ModuleGraphCacheArtifact, pub module_static_cache_artifact: ModuleStaticCacheArtifact, pub chunk_render_cache_artifact: ChunkRenderCacheArtifact, pub imported_by_defer_modules_artifact: ImportedByDeferModulesArtifact, pub code_generated_modules: IdentifierSet, pub build_time_executed_modules: IdentifierSet, pub old_cache: Arc<Cache>, pub code_splitting_cache: CodeSplittingCache, pub incremental: Incremental, pub hash: Option<RspackHashDigest>, pub file_dependencies: ArcPathIndexSet, pub context_dependencies: ArcPathIndexSet, pub missing_dependencies: ArcPathIndexSet, pub build_dependencies: ArcPathIndexSet, pub value_cache_versions: ValueCacheVersions, pub module_executor: Option<ModuleExecutor>, pub modified_files: ArcPathSet, pub removed_files: ArcPathSet, pub make_artifact: MakeArtifact, pub input_filesystem: Arc<dyn ReadableFileSystem>, pub intermediate_filesystem: Arc<dyn IntermediateFileSystem>, pub output_filesystem: Arc<dyn WritableFileSystem>, pub is_rebuild: bool, pub compiler_context: Arc<CompilerContext>, /* private fields */
}

Fields§

§hot_index: u32§records: Option<CompilationRecords>§options: Arc<CompilerOptions>§entries: Entry§global_entry: EntryData§dependency_factories: FxHashMap<DependencyType, Arc<dyn ModuleFactory>>§dependency_templates: FxHashMap<DependencyTemplateType, Arc<dyn DependencyTemplate>>§runtime_modules: IdentifierMap<Box<dyn RuntimeModule>>§runtime_modules_hash: IdentifierMap<RspackHashDigest>§runtime_modules_code_generation_source: IdentifierMap<BoxSource>§chunk_graph: ChunkGraph§chunk_by_ukey: ChunkByUkey§chunk_group_by_ukey: ChunkGroupByUkey§entrypoints: IndexMap<String, ChunkGroupUkey>§async_entrypoints: Vec<ChunkGroupUkey>§emitted_assets: DashSet<String, BuildHasherDefault<FxHasher>>§plugin_driver: Arc<PluginDriver>§buildtime_plugin_driver: Arc<PluginDriver>§resolver_factory: Arc<ResolverFactory>§loader_resolver_factory: Arc<ResolverFactory>§named_chunks: FxHashMap<String, ChunkUkey>§named_chunk_groups: FxHashMap<String, ChunkGroupUkey>§runtime_template: RuntimeTemplate§async_modules_artifact: AsyncModulesArtifact§dependencies_diagnostics_artifact: DependenciesDiagnosticsArtifact§side_effects_optimize_artifact: SideEffectsOptimizeArtifact§module_ids_artifact: ModuleIdsArtifact§chunk_ids_artifact: ChunkIdsArtifact§code_generation_results: BindingCell<CodeGenerationResults>§cgm_hash_artifact: CgmHashArtifact§cgm_runtime_requirements_artifact: CgmRuntimeRequirementsArtifact§cgc_runtime_requirements_artifact: CgcRuntimeRequirementsArtifact§chunk_hashes_artifact: ChunkHashesArtifact§chunk_render_artifact: ChunkRenderArtifact§module_graph_cache_artifact: ModuleGraphCacheArtifact§module_static_cache_artifact: ModuleStaticCacheArtifact§chunk_render_cache_artifact: ChunkRenderCacheArtifact§imported_by_defer_modules_artifact: ImportedByDeferModulesArtifact§code_generated_modules: IdentifierSet§build_time_executed_modules: IdentifierSet§old_cache: Arc<Cache>§code_splitting_cache: CodeSplittingCache§incremental: Incremental§hash: Option<RspackHashDigest>§file_dependencies: ArcPathIndexSet§context_dependencies: ArcPathIndexSet§missing_dependencies: ArcPathIndexSet§build_dependencies: ArcPathIndexSet§value_cache_versions: ValueCacheVersions§module_executor: Option<ModuleExecutor>§modified_files: ArcPathSet§removed_files: ArcPathSet§make_artifact: MakeArtifact§input_filesystem: Arc<dyn ReadableFileSystem>§intermediate_filesystem: Arc<dyn IntermediateFileSystem>§output_filesystem: Arc<dyn WritableFileSystem>§is_rebuild: bool

A flag indicating whether the current compilation is being rebuilt.

Rebuild will include previous compilation data, so persistent cache will not recovery anything

§compiler_context: Arc<CompilerContext>

Implementations§

Source§

impl Compilation

Source

pub const OPTIMIZE_CHUNKS_STAGE_BASIC: i32 = -10i32

Source

pub const OPTIMIZE_CHUNKS_STAGE_DEFAULT: i32 = 0i32

Source

pub const OPTIMIZE_CHUNKS_STAGE_ADVANCED: i32 = 10i32

Source

pub const PROCESS_ASSETS_STAGE_ADDITIONAL: i32 = -2_000i32

Source

pub const PROCESS_ASSETS_STAGE_PRE_PROCESS: i32 = -1_000i32

Source

pub const PROCESS_ASSETS_STAGE_DERIVED: i32 = -200i32

Source

pub const PROCESS_ASSETS_STAGE_ADDITIONS: i32 = -100i32

Source

pub const PROCESS_ASSETS_STAGE_OPTIMIZE: i32 = 100i32

Source

pub const PROCESS_ASSETS_STAGE_OPTIMIZE_COUNT: i32 = 200i32

Source

pub const PROCESS_ASSETS_STAGE_OPTIMIZE_COMPATIBILITY: i32 = 300i32

Source

pub const PROCESS_ASSETS_STAGE_OPTIMIZE_SIZE: i32 = 400i32

Source

pub const PROCESS_ASSETS_STAGE_DEV_TOOLING: i32 = 500i32

Source

pub const PROCESS_ASSETS_STAGE_OPTIMIZE_INLINE: i32 = 700i32

Source

pub const PROCESS_ASSETS_STAGE_SUMMARIZE: i32 = 1_000i32

Source

pub const PROCESS_ASSETS_STAGE_OPTIMIZE_HASH: i32 = 2_500i32

Source

pub const PROCESS_ASSETS_STAGE_AFTER_OPTIMIZE_HASH: i32 = 2_600i32

Source

pub const PROCESS_ASSETS_STAGE_OPTIMIZE_TRANSFER: i32 = 3_000i32

Source

pub const PROCESS_ASSETS_STAGE_ANALYSE: i32 = 4_000i32

Source

pub const PROCESS_ASSETS_STAGE_REPORT: i32 = 5_000i32

Source

pub fn new( compiler_id: CompilerId, options: Arc<CompilerOptions>, plugin_driver: Arc<PluginDriver>, buildtime_plugin_driver: Arc<PluginDriver>, resolver_factory: Arc<ResolverFactory>, loader_resolver_factory: Arc<ResolverFactory>, records: Option<CompilationRecords>, old_cache: Arc<OldCache>, incremental: Incremental, module_executor: Option<ModuleExecutor>, modified_files: ArcPathSet, removed_files: ArcPathSet, input_filesystem: Arc<dyn ReadableFileSystem>, intermediate_filesystem: Arc<dyn IntermediateFileSystem>, output_filesystem: Arc<dyn WritableFileSystem>, is_rebuild: bool, compiler_context: Arc<CompilerContext>, ) -> Self

Source

pub fn id(&self) -> CompilationId

Source

pub fn compiler_id(&self) -> CompilerId

Source

pub fn swap_make_artifact_with_compilation(&mut self, other: &mut Compilation)

Source

pub fn swap_make_artifact(&mut self, make_artifact: &mut MakeArtifact)

Source

pub fn get_module_graph(&self) -> ModuleGraph<'_>

Source

pub fn module_by_identifier( &self, identifier: &ModuleIdentifier, ) -> Option<&BoxModule>

Source

pub fn get_module_graph_mut(&mut self) -> ModuleGraph<'_>

Source

pub fn file_dependencies( &self, ) -> (impl Iterator<Item = &ArcPath>, impl Iterator<Item = &ArcPath>, impl Iterator<Item = &ArcPath>)

Source

pub fn context_dependencies( &self, ) -> (impl Iterator<Item = &ArcPath>, impl Iterator<Item = &ArcPath>, impl Iterator<Item = &ArcPath>)

Source

pub fn missing_dependencies( &self, ) -> (impl Iterator<Item = &ArcPath>, impl Iterator<Item = &ArcPath>, impl Iterator<Item = &ArcPath>)

Source

pub fn build_dependencies( &self, ) -> (impl Iterator<Item = &ArcPath>, impl Iterator<Item = &ArcPath>, impl Iterator<Item = &ArcPath>)

Source

pub fn get_import_var( &self, module: ModuleIdentifier, target_module: Option<&BoxModule>, user_request: &str, phase: ImportPhase, runtime: Option<&RuntimeSpec>, ) -> String

Source

pub async fn add_entry( &mut self, entry: BoxDependency, options: EntryOptions, ) -> Result<()>

Source

pub async fn add_entry_batch( &mut self, args: Vec<(BoxDependency, EntryOptions)>, ) -> Result<()>

Source

pub async fn add_include( &mut self, args: Vec<(BoxDependency, EntryOptions)>, ) -> Result<()>

Source

pub fn update_asset( &mut self, filename: &str, updater: impl FnOnce(BoxSource, BindingCell<AssetInfo>) -> Result<(BoxSource, BindingCell<AssetInfo>)>, ) -> Result<()>

Source

pub fn emit_asset(&mut self, filename: String, asset: CompilationAsset)

Source

pub fn delete_asset(&mut self, filename: &str)

Source

pub fn rename_asset(&mut self, filename: &str, new_name: String)

Source

pub fn par_rename_assets(&mut self, renames: Vec<(String, String)>)

Source

pub fn assets(&self) -> &CompilationAssets

Source

pub fn assets_mut(&mut self) -> &mut CompilationAssets

Source

pub fn entrypoints(&self) -> &IndexMap<String, ChunkGroupUkey>

Source

pub fn push_diagnostic(&mut self, diagnostic: Diagnostic)

Source

pub fn extend_diagnostics( &mut self, diagnostics: impl IntoIterator<Item = Diagnostic>, )

Source

pub fn diagnostics(&self) -> &[Diagnostic]

Source

pub fn diagnostics_mut(&mut self) -> &mut Vec<Diagnostic>

Source

pub fn get_errors(&self) -> impl Iterator<Item = &Diagnostic>

Source

pub fn get_errors_sorted(&self) -> impl Iterator<Item = &Diagnostic>

Get sorted errors based on the factors as follows in order:

  • module identifier
  • error offset Rspack assumes for each offset, there is only one error. However, when it comes to the case that there are multiple errors with the same offset, the order of these errors will not be guaranteed.
Source

pub fn get_warnings(&self) -> impl Iterator<Item = &Diagnostic>

Source

pub fn get_warnings_sorted(&self) -> impl Iterator<Item = &Diagnostic>

Get sorted warnings based on the factors as follows in order:

  • module identifier
  • error offset Rspack assumes for each offset, there is only one error. However, when it comes to the case that there are multiple errors with the same offset, the order of these errors will not be guaranteed.
Source

pub fn get_logging(&self) -> &CompilationLogging

Source

pub fn get_stats(&self) -> Stats<'_>

Source

pub fn add_named_chunk( name: String, chunk_by_ukey: &mut ChunkByUkey, named_chunks: &mut HashMap<String, ChunkUkey>, ) -> (ChunkUkey, bool)

Source

pub fn add_chunk(chunk_by_ukey: &mut ChunkByUkey) -> ChunkUkey

Source

pub async fn make(&mut self) -> Result<()>

Source

pub async fn rebuild_module<T>( &mut self, module_identifiers: IdentifierSet, f: impl Fn(Vec<&BoxModule>) -> T, ) -> Result<T>

Source

pub fn entry_modules(&self) -> IdentifierSet

Source

pub fn entrypoint_by_name(&self, name: &str) -> &Entrypoint

Source

pub async fn finish(&mut self, plugin_driver: Arc<PluginDriver>) -> Result<()>

Source

pub async fn seal(&mut self, plugin_driver: Arc<PluginDriver>) -> Result<()>

Source

pub fn assign_runtime_ids(&mut self)

Source

pub fn get_chunk_graph_entries( &self, ) -> impl Iterator<Item = ChunkUkey> + use<'_>

Source

pub async fn process_modules_runtime_requirements( &mut self, modules: IdentifierSet, plugin_driver: Arc<PluginDriver>, ) -> Result<()>

Source

pub async fn process_chunks_runtime_requirements( &mut self, chunks: UkeySet<ChunkUkey>, entries: UkeySet<ChunkUkey>, plugin_driver: Arc<PluginDriver>, ) -> Result<()>

Source

pub async fn create_hash( &mut self, plugin_driver: Arc<PluginDriver>, ) -> Result<()>

Source

pub async fn runtime_modules_code_generation(&mut self) -> Result<()>

Source

pub async fn create_module_hashes( &mut self, modules: IdentifierSet, ) -> Result<()>

Source

pub fn add_runtime_module( &mut self, chunk_ukey: &ChunkUkey, module: Box<dyn RuntimeModule>, ) -> Result<()>

Source

pub fn get_hash(&self) -> Option<&str>

Source

pub async fn get_path<'b, 'a: 'b>( &'a self, filename: &Filename, data: PathData<'b>, ) -> Result<String>

Source

pub async fn get_path_with_info<'b, 'a: 'b>( &'a self, filename: &Filename, data: PathData<'b>, info: &mut AssetInfo, ) -> Result<String>

Source

pub async fn get_asset_path( &self, filename: &Filename, data: PathData<'_>, ) -> Result<String>

Source

pub async fn get_asset_path_with_info( &self, filename: &Filename, data: PathData<'_>, ) -> Result<(String, AssetInfo)>

Source

pub fn get_logger(&self, name: impl Into<String>) -> CompilationLogger

Source

pub fn set_dependency_factory( &mut self, dependency_type: DependencyType, module_factory: Arc<dyn ModuleFactory>, )

Source

pub fn get_dependency_factory( &self, dependency: &BoxDependency, ) -> Arc<dyn ModuleFactory>

Source

pub fn set_dependency_template( &mut self, template_type: DependencyTemplateType, template: Arc<dyn DependencyTemplate>, )

Source

pub fn get_dependency_template( &self, dep: &dyn DependencyCodeGeneration, ) -> Option<Arc<dyn DependencyTemplate>>

Trait Implementations§

Source§

impl Debug for Compilation

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> ArchivePointee for T

Source§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
Source§

fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
Source§

impl<T> AsAny for T
where T: Any,

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> Conv for T

Source§

fn conv<T>(self) -> T
where Self: Into<T>,

Converts self into T using Into<T>. Read more
Source§

impl<T> FmtForward for T

Source§

fn fmt_binary(self) -> FmtBinary<Self>
where Self: Binary,

Causes self to use its Binary implementation when Debug-formatted.
Source§

fn fmt_display(self) -> FmtDisplay<Self>
where Self: Display,

Causes self to use its Display implementation when Debug-formatted.
Source§

fn fmt_lower_exp(self) -> FmtLowerExp<Self>
where Self: LowerExp,

Causes self to use its LowerExp implementation when Debug-formatted.
Source§

fn fmt_lower_hex(self) -> FmtLowerHex<Self>
where Self: LowerHex,

Causes self to use its LowerHex implementation when Debug-formatted.
Source§

fn fmt_octal(self) -> FmtOctal<Self>
where Self: Octal,

Causes self to use its Octal implementation when Debug-formatted.
Source§

fn fmt_pointer(self) -> FmtPointer<Self>
where Self: Pointer,

Causes self to use its Pointer implementation when Debug-formatted.
Source§

fn fmt_upper_exp(self) -> FmtUpperExp<Self>
where Self: UpperExp,

Causes self to use its UpperExp implementation when Debug-formatted.
Source§

fn fmt_upper_hex(self) -> FmtUpperHex<Self>
where Self: UpperHex,

Causes self to use its UpperHex implementation when Debug-formatted.
Source§

fn fmt_list(self) -> FmtList<Self>
where &'a Self: for<'a> IntoIterator,

Formats each item in a sequence. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoAny for T
where T: Any,

Source§

fn into_any(self: Box<T>) -> Box<dyn Any>

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> IntoTWithDiagnosticArray for T
where T: Debug,

Source§

impl<T> LayoutRaw for T

Source§

fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>

Returns the layout of the type.
Source§

impl<D> OwoColorize for D

Source§

fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>
where C: Color,

Set the foreground color generically Read more
Source§

fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>
where C: Color,

Set the background color generically. Read more
Source§

fn black(&self) -> FgColorDisplay<'_, Black, Self>

Change the foreground color to black
Source§

fn on_black(&self) -> BgColorDisplay<'_, Black, Self>

Change the background color to black
Source§

fn red(&self) -> FgColorDisplay<'_, Red, Self>

Change the foreground color to red
Source§

fn on_red(&self) -> BgColorDisplay<'_, Red, Self>

Change the background color to red
Source§

fn green(&self) -> FgColorDisplay<'_, Green, Self>

Change the foreground color to green
Source§

fn on_green(&self) -> BgColorDisplay<'_, Green, Self>

Change the background color to green
Source§

fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>

Change the foreground color to yellow
Source§

fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>

Change the background color to yellow
Source§

fn blue(&self) -> FgColorDisplay<'_, Blue, Self>

Change the foreground color to blue
Source§

fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>

Change the background color to blue
Source§

fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>

Change the foreground color to magenta
Source§

fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>

Change the background color to magenta
Source§

fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>

Change the foreground color to purple
Source§

fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>

Change the background color to purple
Source§

fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>

Change the foreground color to cyan
Source§

fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>

Change the background color to cyan
Source§

fn white(&self) -> FgColorDisplay<'_, White, Self>

Change the foreground color to white
Source§

fn on_white(&self) -> BgColorDisplay<'_, White, Self>

Change the background color to white
Source§

fn default_color(&self) -> FgColorDisplay<'_, Default, Self>

Change the foreground color to the terminal default
Source§

fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>

Change the background color to the terminal default
Source§

fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>

Change the foreground color to bright black
Source§

fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>

Change the background color to bright black
Source§

fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>

Change the foreground color to bright red
Source§

fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>

Change the background color to bright red
Source§

fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>

Change the foreground color to bright green
Source§

fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>

Change the background color to bright green
Source§

fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>

Change the foreground color to bright yellow
Source§

fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>

Change the background color to bright yellow
Source§

fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>

Change the foreground color to bright blue
Source§

fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>

Change the background color to bright blue
Source§

fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>

Change the foreground color to bright magenta
Source§

fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>

Change the background color to bright magenta
Source§

fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>

Change the foreground color to bright purple
Source§

fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>

Change the background color to bright purple
Source§

fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>

Change the foreground color to bright cyan
Source§

fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>

Change the background color to bright cyan
Source§

fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>

Change the foreground color to bright white
Source§

fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>

Change the background color to bright white
Source§

fn bold(&self) -> BoldDisplay<'_, Self>

Make the text bold
Source§

fn dimmed(&self) -> DimDisplay<'_, Self>

Make the text dim
Source§

fn italic(&self) -> ItalicDisplay<'_, Self>

Make the text italicized
Source§

fn underline(&self) -> UnderlineDisplay<'_, Self>

Make the text underlined
Make the text blink
Make the text blink (but fast!)
Source§

fn reversed(&self) -> ReversedDisplay<'_, Self>

Swap the foreground and background colors
Source§

fn hidden(&self) -> HiddenDisplay<'_, Self>

Hide the text
Source§

fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>

Cross out the text
Source§

fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the foreground color at runtime. Only use if you do not know which color will be used at compile-time. If the color is constant, use either OwoColorize::fg or a color-specific method, such as OwoColorize::green, Read more
Source§

fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>
where Color: DynColor,

Set the background color at runtime. Only use if you do not know what color to use at compile-time. If the color is constant, use either OwoColorize::bg or a color-specific method, such as OwoColorize::on_yellow, Read more
Source§

fn fg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> FgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the foreground color to a specific RGB value.
Source§

fn bg_rgb<const R: u8, const G: u8, const B: u8>( &self, ) -> BgColorDisplay<'_, CustomColor<R, G, B>, Self>

Set the background color to a specific RGB value.
Source§

fn truecolor(&self, r: u8, g: u8, b: u8) -> FgDynColorDisplay<'_, Rgb, Self>

Sets the foreground color to an RGB value.
Source§

fn on_truecolor(&self, r: u8, g: u8, b: u8) -> BgDynColorDisplay<'_, Rgb, Self>

Sets the background color to an RGB value.
Source§

fn style(&self, style: Style) -> Styled<&Self>

Apply a runtime-determined style
Source§

impl<T> Pipe for T
where T: ?Sized,

Source§

fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> R
where Self: Sized,

Pipes by value. This is generally the method you want to use. Read more
Source§

fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> R
where R: 'a,

Borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> R
where R: 'a,

Mutably borrows self and passes that borrow into the pipe function. Read more
Source§

fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
where Self: Borrow<B>, B: 'a + ?Sized, R: 'a,

Borrows self, then passes self.borrow() into the pipe function. Read more
Source§

fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
where Self: BorrowMut<B>, B: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.borrow_mut() into the pipe function. Read more
Source§

fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
where Self: AsRef<U>, U: 'a + ?Sized, R: 'a,

Borrows self, then passes self.as_ref() into the pipe function.
Source§

fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
where Self: AsMut<U>, U: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.as_mut() into the pipe function.
Source§

fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
where Self: Deref<Target = T>, T: 'a + ?Sized, R: 'a,

Borrows self, then passes self.deref() into the pipe function.
Source§

fn pipe_deref_mut<'a, T, R>( &'a mut self, func: impl FnOnce(&'a mut T) -> R, ) -> R
where Self: DerefMut<Target = T> + Deref, T: 'a + ?Sized, R: 'a,

Mutably borrows self, then passes self.deref_mut() into the pipe function.
Source§

impl<T> Pointable for T

Source§

const ALIGN: usize

The alignment of pointer.
Source§

type Init = T

The type for initializers.
Source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
Source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
Source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
Source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Pointee for T

Source§

type Metadata = ()

The metadata type for pointers and references to this type.
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> Tap for T

Source§

fn tap(self, func: impl FnOnce(&Self)) -> Self

Immutable access to a value. Read more
Source§

fn tap_mut(self, func: impl FnOnce(&mut Self)) -> Self

Mutable access to a value. Read more
Source§

fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Immutable access to the Borrow<B> of a value. Read more
Source§

fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Mutable access to the BorrowMut<B> of a value. Read more
Source§

fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Immutable access to the AsRef<R> view of a value. Read more
Source§

fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Mutable access to the AsMut<R> view of a value. Read more
Source§

fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Immutable access to the Deref::Target of a value. Read more
Source§

fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Mutable access to the Deref::Target of a value. Read more
Source§

fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self

Calls .tap() only in debug builds, and is erased in release builds.
Source§

fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self

Calls .tap_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
where Self: Borrow<B>, B: ?Sized,

Calls .tap_borrow() only in debug builds, and is erased in release builds.
Source§

fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
where Self: BorrowMut<B>, B: ?Sized,

Calls .tap_borrow_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
where Self: AsRef<R>, R: ?Sized,

Calls .tap_ref() only in debug builds, and is erased in release builds.
Source§

fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
where Self: AsMut<R>, R: ?Sized,

Calls .tap_ref_mut() only in debug builds, and is erased in release builds.
Source§

fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
where Self: Deref<Target = T>, T: ?Sized,

Calls .tap_deref() only in debug builds, and is erased in release builds.
Source§

fn tap_deref_mut_dbg<T>(self, func: impl FnOnce(&mut T)) -> Self
where Self: DerefMut<Target = T> + Deref, T: ?Sized,

Calls .tap_deref_mut() only in debug builds, and is erased in release builds.
Source§

impl<T> TryConv for T

Source§

fn try_conv<T>(self) -> Result<T, Self::Error>
where Self: TryInto<T>,

Attempts to convert self into T using TryInto<T>. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more