pub enum ShellError {
Show 93 variants OperatorMismatch { op_span: Span, lhs_ty: Type, lhs_span: Span, rhs_ty: Type, rhs_span: Span, }, OperatorOverflow { msg: String, span: Span, help: String, }, PipelineMismatch { exp_input_type: String, dst_span: Span, src_span: Span, }, OnlySupportsThisInputType { exp_input_type: String, wrong_type: String, dst_span: Span, src_span: Span, }, PipelineEmpty { dst_span: Span, }, TypeMismatch { err_message: String, span: Span, }, IncorrectValue { msg: String, span: Span, }, UnsupportedOperator { operator: Operator, span: Span, }, AssignmentRequiresVar { lhs_span: Span, }, AssignmentRequiresMutableVar { lhs_span: Span, }, UnknownOperator { op_token: String, span: Span, }, MissingParameter { param_name: String, span: Span, }, IncompatibleParameters { left_message: String, left_span: Span, right_message: String, right_span: Span, }, DelimiterError { msg: String, span: Span, }, IncompatibleParametersSingle { msg: String, span: Span, }, ExternalNotSupported { span: Span, }, InvalidProbability { span: Span, }, InvalidRange { left_flank: String, right_flank: String, span: Span, }, NushellFailed { msg: String, }, NushellFailedSpanned { msg: String, label: String, span: Span, }, NushellFailedHelp { msg: String, help: String, }, VariableNotFoundAtRuntime { span: Span, }, EnvVarNotFoundAtRuntime { envvar_name: String, span: Span, }, ModuleNotFoundAtRuntime { mod_name: String, span: Span, }, OverlayNotFoundAtRuntime { overlay_name: String, span: Span, }, NotFound { span: Span, }, CantConvert { to_type: String, from_type: String, span: Span, help: Option<String>, }, CantConvertWithValue { to_type: String, from_type: String, details: String, dst_span: Span, src_span: Span, help: Option<String>, }, EnvVarNotAString { envvar_name: String, span: Span, }, AutomaticEnvVarSetManually { envvar_name: String, span: Span, }, CannotReplaceEnv { span: Span, }, DivisionByZero { span: Span, }, CannotCreateRange { span: Span, }, AccessBeyondEnd { max_idx: usize, span: Span, }, InsertAfterNextFreeIndex { available_idx: usize, span: Span, }, AccessEmptyContent { span: Span, }, AccessBeyondEndOfStream { span: Span, }, IncompatiblePathAccess { type_name: String, span: Span, }, CantFindColumn { col_name: String, span: Span, src_span: Span, }, ColumnAlreadyExists { col_name: String, span: Span, src_span: Span, }, NotAList { dst_span: Span, src_span: Span, }, ColumnDefinedTwice { second_use: Span, first_use: Span, }, ExternalCommand { label: String, help: String, span: Span, }, UnsupportedInput(String, String, Span, Span), DatetimeParseError(String, Span), NetworkFailure(String, Span), CommandNotFound(Span), AliasNotFound(Span), FlagNotFound(String, Span), FileNotFound(Span), FileNotFoundCustom(String, Span), PluginFailedToLoad(String), PluginFailedToEncode(String), PluginFailedToDecode(String), IOInterrupted(String, Span), IOError(String), IOErrorSpanned(String, Span), PermissionDeniedError(String, Span), OutOfMemoryError(String, Span), NotADirectory(Span), DirectoryNotFound(Span, Option<String>), DirectoryNotFoundCustom(String, Span), MoveNotPossible { source_message: String, source_span: Span, destination_message: String, destination_span: Span, }, MoveNotPossibleSingle(String, Span), CreateNotPossible(String, Span), ChangeAccessTimeNotPossible(String, Span), ChangeModifiedTimeNotPossible(String, Span), RemoveNotPossible(String, Span), NoFileToBeRemoved(), NoFileToBeMoved(), NoFileToBeCopied(), ReadingFile(String, Span), DidYouMean(String, Span), DidYouMeanCustom(String, String, Span), NonUtf8(Span), NonUtf8Custom(String, Span), DowncastNotPossible(String, Span), UnsupportedConfigValue(String, String, Span), MissingConfigValue(String, Span), NeedsPositiveValue(Span), GenericError(String, String, Option<Span>, Option<String>, Vec<ShellError>), OutsideSpannedLabeledError(String, String, String, Span), DeprecatedCommand(String, String, Span), DeprecatedParameter(String, String, Span), NonUnicodeInput, UnexpectedAbbrComponent(String), EvalBlockWithInput(Span, Vec<ShellError>), Break(Span), Continue(Span), Return(Span, Box<Value>), RecursionLimitReached { recursion_limit: u64, span: Option<Span>, }, LazyRecordAccessFailed { message: String, column_name: String, span: Span, }, InterruptedByUser { span: Option<Span>, },
}
Expand description

The fundamental error type for the evaluation engine. These cases represent different kinds of errors the evaluator might face, along with helpful spans to label. An error renderer will take this error value and pass it into an error viewer to display to the user.

Variants§

§

OperatorMismatch

Fields

§op_span: Span
§lhs_ty: Type
§lhs_span: Span
§rhs_ty: Type
§rhs_span: Span

An operator received two arguments of incompatible types.

Resolution

Check each argument’s type and convert one or both as needed.

§

OperatorOverflow

Fields

§span: Span
§help: String

An arithmetic operation’s resulting value overflowed its possible size.

Resolution

Check the inputs to the operation and add guards for their sizes. Integers are generally of size i64, floats are generally f64.

§

PipelineMismatch

Fields

§exp_input_type: String
§dst_span: Span
§src_span: Span

The pipelined input into a command was not of the expected type. For example, it might expect a string input, but received a table instead.

Resolution

Check the relevant pipeline and extract or convert values as needed.

§

OnlySupportsThisInputType

Fields

§exp_input_type: String
§wrong_type: String
§dst_span: Span
§src_span: Span

The pipelined input into a command was not of the expected type. For example, it might expect a string input, but received a table instead.

(duplicate of ShellError::PipelineMismatch that reports the observed type)

Resolution

Check the relevant pipeline and extract or convert values as needed.

§

PipelineEmpty

Fields

§dst_span: Span

No input value was piped into the command.

Resolution

Only use this command to process values from a previous expression.

§

TypeMismatch

Fields

§err_message: String
§span: Span

A command received an argument of the wrong type.

Resolution

Convert the argument type before passing it in, or change the command to accept the type.

§

IncorrectValue

Fields

§span: Span

A command received an argument with correct type but incorrect value.

Resolution

Correct the argument value before passing it in or change the command.

§

UnsupportedOperator

Fields

§operator: Operator
§span: Span

This value cannot be used with this operator.

Resolution

Not all values, for example custom values, can be used with all operators. Either implement support for the operator on this type, or convert the type to a supported one.

§

AssignmentRequiresVar

Fields

§lhs_span: Span

Invalid assignment left-hand side

Resolution

Assignment requires that you assign to a variable or variable cell path.

§

AssignmentRequiresMutableVar

Fields

§lhs_span: Span

Invalid assignment left-hand side

Resolution

Assignment requires that you assign to a mutable variable or cell path.

§

UnknownOperator

Fields

§op_token: String
§span: Span

An operator was not recognized during evaluation.

Resolution

Did you write the correct operator?

§

MissingParameter

Fields

§param_name: String
§span: Span

An expected command parameter is missing.

Resolution

Add the expected parameter and try again.

§

IncompatibleParameters

Fields

§left_message: String
§left_span: Span
§right_message: String
§right_span: Span

Two parameters conflict with each other or are otherwise mutually exclusive.

Resolution

Remove one of the parameters/options and try again.

§

DelimiterError

Fields

§span: Span

There’s some issue with number or matching of delimiters in an expression.

Resolution

Check your syntax for mismatched braces, RegExp syntax errors, etc, based on the specific error message.

§

IncompatibleParametersSingle

Fields

§span: Span

An operation received parameters with some sort of incompatibility (for example, different number of rows in a table, incompatible column names, etc).

Resolution

Refer to the specific error message for details on what’s incompatible and then fix your inputs to make sure they match that way.

§

ExternalNotSupported

Fields

§span: Span

You’re trying to run an unsupported external command.

Resolution

Make sure there’s an appropriate run-external declaration for this external command.

§

InvalidProbability

Fields

§span: Span

The given probability input is invalid. The probability must be between 0 and 1.

Resolution

Make sure the probability is between 0 and 1 and try again.

§

InvalidRange

Fields

§left_flank: String
§right_flank: String
§span: Span

The first value in a .. range must be compatible with the second one.

Resolution

Check to make sure both values are compatible, and that the values are enumerable in Nushell.

§

NushellFailed

Fields

Catastrophic nushell failure. This reflects a completely unexpected or unrecoverable error.

Resolution

It is very likely that this is a bug. Please file an issue at https://github.com/nushell/nushell/issues with relevant information.

§

NushellFailedSpanned

Fields

§label: String
§span: Span

Catastrophic nushell failure. This reflects a completely unexpected or unrecoverable error.

Resolution

It is very likely that this is a bug. Please file an issue at https://github.com/nushell/nushell/issues with relevant information.

§

NushellFailedHelp

Fields

§help: String

Catastrophic nushell failure. This reflects a completely unexpected or unrecoverable error.

Resolution

It is very likely that this is a bug. Please file an issue at https://github.com/nushell/nushell/issues with relevant information.

§

VariableNotFoundAtRuntime

Fields

§span: Span

A referenced variable was not found at runtime.

Resolution

Check the variable name. Did you typo it? Did you forget to declare it? Is the casing right?

§

EnvVarNotFoundAtRuntime

Fields

§envvar_name: String
§span: Span

A referenced environment variable was not found at runtime.

Resolution

Check the environment variable name. Did you typo it? Did you forget to declare it? Is the casing right?

§

ModuleNotFoundAtRuntime

Fields

§mod_name: String
§span: Span

A referenced module was not found at runtime.

Resolution

Check the module name. Did you typo it? Did you forget to declare it? Is the casing right?

§

OverlayNotFoundAtRuntime

Fields

§overlay_name: String
§span: Span

A referenced overlay was not found at runtime.

Resolution

Check the overlay name. Did you typo it? Did you forget to declare it? Is the casing right?

§

NotFound

Fields

§span: Span

The given item was not found. This is a fairly generic error that depends on context.

Resolution

This error is triggered in various places, and simply signals that “something” was not found. Refer to the specific error message for further details.

§

CantConvert

Fields

§to_type: String
§from_type: String
§span: Span

Failed to convert a value of one type into a different type.

Resolution

Not all values can be coerced this way. Check the supported type(s) and try again.

§

CantConvertWithValue

Fields

§to_type: String
§from_type: String
§details: String
§dst_span: Span
§src_span: Span

Failed to convert a value of one type into a different type. Includes hint for what the first value is.

Resolution

Not all values can be coerced this way. Check the supported type(s) and try again.

§

EnvVarNotAString

Fields

§envvar_name: String
§span: Span

An environment variable cannot be represented as a string.

Resolution

Not all types can be converted to environment variable values, which must be strings. Check the input type and try again.

§

AutomaticEnvVarSetManually

Fields

§envvar_name: String
§span: Span

This environment variable cannot be set manually.

Resolution

This environment variable is set automatically by Nushell and cannot not be set manually.

§

CannotReplaceEnv

Fields

§span: Span

It is not possible to replace the entire environment at once

Resolution

Setting the entire environment is not allowed. Change environment variables individually instead.

§

DivisionByZero

Fields

§span: Span

Division by zero is not a thing.

Resolution

Add a guard of some sort to check whether a denominator input to this division is zero, and branch off if that’s the case.

§

CannotCreateRange

Fields

§span: Span

An error happened while tryin to create a range.

This can happen in various unexpected situations, for example if the range would loop forever (as would be the case with a 0-increment).

Resolution

Check your range values to make sure they’re countable and would not loop forever.

§

AccessBeyondEnd

Fields

§max_idx: usize
§span: Span

You attempted to access an index beyond the available length of a value.

Resolution

Check your lengths and try again.

§

InsertAfterNextFreeIndex

Fields

§available_idx: usize
§span: Span

You attempted to insert data at a list position higher than the end.

Resolution

To insert data into a list, assign to the last used index + 1.

§

AccessEmptyContent

Fields

§span: Span

You attempted to access an index when it’s empty.

Resolution

Check your lengths and try again.

§

AccessBeyondEndOfStream

Fields

§span: Span

You attempted to access an index beyond the available length of a stream.

Resolution

Check your lengths and try again.

§

IncompatiblePathAccess

Fields

§type_name: String
§span: Span

Tried to index into a type that does not support pathed access.

Resolution

Check your types. Only composite types can be pathed into.

§

CantFindColumn

Fields

§col_name: String
§span: Span
§src_span: Span

The requested column does not exist.

Resolution

Check the spelling of your column name. Did you forget to rename a column somewhere?

§

ColumnAlreadyExists

Fields

§col_name: String
§span: Span
§src_span: Span

Attempted to insert a column into a table, but a column with that name already exists.

Resolution

Drop or rename the existing column (check rename -h) and try again.

§

NotAList

Fields

§dst_span: Span
§src_span: Span

The given operation can only be performed on lists.

Resolution

Check the input type to this command. Are you sure it’s a list?

§

ColumnDefinedTwice

Fields

§second_use: Span
§first_use: Span

Fields can only be defined once

Resolution

Check the record to ensure you aren’t reusing the same field name

§

ExternalCommand

Fields

§label: String
§help: String
§span: Span

An error happened while performing an external command.

Resolution

This error is fairly generic. Refer to the specific error message for further details.

§

UnsupportedInput(String, String, Span, Span)

An operation was attempted with an input unsupported for some reason.

Resolution

This error is fairly generic. Refer to the specific error message for further details.

§

DatetimeParseError(String, Span)

Failed to parse an input into a datetime value.

Resolution

Make sure your datetime input format is correct.

For example, these are some valid formats:

  • “5 pm”
  • “2020/12/4”
  • “2020.12.04 22:10 +2”
  • “2020-04-12 22:10:57 +02:00”
  • “2020-04-12T22:10:57.213231+02:00”
  • “Tue, 1 Jul 2003 10:52:37 +0200”“#
§

NetworkFailure(String, Span)

A network operation failed.

Resolution

It’s always DNS.

§

CommandNotFound(Span)

Help text for this command could not be found.

Resolution

Check the spelling for the requested command and try again. Are you sure it’s defined and your configurations are loading correctly? Can you execute it?

§

AliasNotFound(Span)

This alias could not be found

Resolution

The alias does not exist in the current scope. It might exist in another scope or overlay or be hidden.

§

FlagNotFound(String, Span)

A flag was not found.

§

FileNotFound(Span)

Failed to find a file during a nushell operation.

Resolution

Does the file in the error message exist? Is it readable and accessible? Is the casing right?

§

FileNotFoundCustom(String, Span)

Failed to find a file during a nushell operation.

Resolution

Does the file in the error message exist? Is it readable and accessible? Is the casing right?

§

PluginFailedToLoad(String)

A plugin failed to load.

Resolution

This is a fairly generic error. Refer to the specific error message for further details.

§

PluginFailedToEncode(String)

A message from a plugin failed to encode.

Resolution

This is likely a bug with the plugin itself.

§

PluginFailedToDecode(String)

A message to a plugin failed to decode.

Resolution

This is either an issue with the inputs to a plugin (bad JSON?) or a bug in the plugin itself. Fix or report as appropriate.

§

IOInterrupted(String, Span)

I/O operation interrupted.

Resolution

This is a generic error. Refer to the specific error message for further details.

§

IOError(String)

An I/O operation failed.

Resolution

This is a generic error. Refer to the specific error message for further details.

§

IOErrorSpanned(String, Span)

An I/O operation failed.

Resolution

This is a generic error. Refer to the specific error message for further details.

§

PermissionDeniedError(String, Span)

Permission for an operation was denied.

Resolution

This is a generic error. Refer to the specific error message for further details.

§

OutOfMemoryError(String, Span)

Out of memory.

Resolution

This is a generic error. Refer to the specific error message for further details.

§

NotADirectory(Span)

Tried to cd to a path that isn’t a directory.

Resolution

Make sure the path is a directory. It currently exists, but is of some other type, like a file.

§

DirectoryNotFound(Span, Option<String>)

Attempted to perform an operation on a directory that doesn’t exist.

Resolution

Make sure the directory in the error message actually exists before trying again.

§

DirectoryNotFoundCustom(String, Span)

Attempted to perform an operation on a directory that doesn’t exist.

Resolution

Make sure the directory in the error message actually exists before trying again.

§

MoveNotPossible

Fields

§source_message: String
§source_span: Span
§destination_message: String
§destination_span: Span

The requested move operation cannot be completed. This is typically because both paths exist, but are of different types. For example, you might be trying to overwrite an existing file with a directory.

Resolution

Make sure the destination path does not exist before moving a directory.

§

MoveNotPossibleSingle(String, Span)

The requested move operation cannot be completed. This is typically because both paths exist, but are of different types. For example, you might be trying to overwrite an existing file with a directory.

Resolution

Make sure the destination path does not exist before moving a directory.

§

CreateNotPossible(String, Span)

Failed to create either a file or directory.

Resolution

This is a fairly generic error. Refer to the specific error message for further details.

§

ChangeAccessTimeNotPossible(String, Span)

Changing the access time (“atime”) of this file is not possible.

Resolution

This can be for various reasons, such as your platform or permission flags. Refer to the specific error message for more details.

§

ChangeModifiedTimeNotPossible(String, Span)

Changing the modification time (“mtime”) of this file is not possible.

Resolution

This can be for various reasons, such as your platform or permission flags. Refer to the specific error message for more details.

§

RemoveNotPossible(String, Span)

Unable to remove this item.

§

NoFileToBeRemoved()

§

NoFileToBeMoved()

§

NoFileToBeCopied()

§

ReadingFile(String, Span)

Error while trying to read a file

Resolution

The error will show the result from a file operation

§

DidYouMean(String, Span)

A name was not found. Did you mean a different name?

Resolution

The error message will suggest a possible match for what you meant.

§

DidYouMeanCustom(String, String, Span)

A name was not found. Did you mean a different name?

Resolution

The error message will suggest a possible match for what you meant.

§

NonUtf8(Span)

The given input must be valid UTF-8 for further processing.

Resolution

Check your input’s encoding. Are there any funny characters/bytes?

§

NonUtf8Custom(String, Span)

The given input must be valid UTF-8 for further processing.

Resolution

Check your input’s encoding. Are there any funny characters/bytes?

§

DowncastNotPossible(String, Span)

A custom value could not be converted to a Dataframe.

Resolution

Make sure conversion to a Dataframe is possible for this value or convert it to a type that does, first.

§

UnsupportedConfigValue(String, String, Span)

The value given for this configuration is not supported.

Resolution

Refer to the specific error message for details and convert values as needed.

§

MissingConfigValue(String, Span)

An expected configuration value is not present.

Resolution

Refer to the specific error message and add the configuration value to your config file as needed.

§

NeedsPositiveValue(Span)

Negative value passed when positive one is required.

Resolution

Guard against negative values or check your inputs.

§

GenericError(String, String, Option<Span>, Option<String>, Vec<ShellError>)

This is a generic error type used for different situations.

§

OutsideSpannedLabeledError(String, String, String, Span)

This is a generic error type used for different situations.

§

DeprecatedCommand(String, String, Span)

Attempted to use a deprecated command.

Resolution

Check the help for the new suggested command and update your script accordingly.

§

DeprecatedParameter(String, String, Span)

Attempted to use a deprecated parameter.

Resolution

Check the help for the command and update your script accordingly.

§

NonUnicodeInput

Non-Unicode input received.

Resolution

Check that your path is UTF-8 compatible.

§

UnexpectedAbbrComponent(String)

Unexpected abbr component.

Resolution

Check the path abbreviation to ensure that it is valid.

§

EvalBlockWithInput(Span, Vec<ShellError>)

Failed to eval block with specific pipeline input.

§

Break(Span)

Break event, which may become an error if used outside of a loop

§

Continue(Span)

Continue event, which may become an error if used outside of a loop

§

Return(Span, Box<Value>)

Return event, which may become an error if used outside of a function

§

RecursionLimitReached

Fields

§recursion_limit: u64
§span: Option<Span>

The code being executed called itself too many times.

Resolution

Adjust your Nu code to

§

LazyRecordAccessFailed

Fields

§message: String
§column_name: String
§span: Span

An attempt to access a record column failed.

§

InterruptedByUser

Fields

§span: Option<Span>

Operation interrupted by user

Trait Implementations§

source§

impl Clone for ShellError

source§

fn clone(&self) -> ShellError

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ShellError

source§

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

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ShellError

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Diagnostic for ShellError

source§

fn code(&self) -> Option<Box<dyn Display + '_>>

Unique diagnostic code that can be used to look up more information about this Diagnostic. Ideally also globally unique, and documented in the toplevel crate’s documentation for easy searching. Rust path format (foo::bar::baz) is recommended, but more classic codes like E0123 or enums will work just fine.
source§

fn help(&self) -> Option<Box<dyn Display + '_>>

Additional help text related to this Diagnostic. Do you have any advice for the poor soul who’s just run into this issue?
source§

fn labels(&self) -> Option<Box<dyn Iterator<Item = LabeledSpan> + '_>>

Labels to apply to this Diagnostic’s Diagnostic::source_code
source§

fn source_code(&self) -> Option<&dyn SourceCode>

Source code to apply this Diagnostic’s Diagnostic::labels to.
source§

fn related(&self) -> Option<Box<dyn Iterator<Item = &dyn Diagnostic> + '_>>

Additional related Diagnostics.
source§

fn severity(&self) -> Option<Severity>

Diagnostic severity. This may be used by ReportHandlers to change the display format of this diagnostic. Read more
source§

fn url<'a>(&'a self) -> Option<Box<dyn Display + 'a, Global>>

URL to visit for a more detailed explanation/help about this Diagnostic.
source§

fn diagnostic_source(&self) -> Option<&dyn Diagnostic>

The cause of the error.
source§

impl Display for ShellError

source§

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

Formats the value using the given formatter. Read more
source§

impl Error for ShellError

1.30.0 · source§

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any. Read more
1.0.0 · source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
source§

impl From<Box<dyn Error + 'static, Global>> for ShellError

source§

fn from(input: Box<dyn Error>) -> ShellError

Converts to this type from the input type.
source§

impl From<Box<dyn Error + Sync + Send + 'static, Global>> for ShellError

source§

fn from(input: Box<dyn Error + Send + Sync>) -> ShellError

Converts to this type from the input type.
source§

impl From<Error> for ShellError

source§

fn from(input: Error) -> ShellError

Converts to this type from the input type.
source§

impl Serialize for ShellError

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

source§

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

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere 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.

§

impl<D> OwoColorize for D

§

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

Set the foreground color generically Read more
§

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

Set the background color generically. Read more
§

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

Change the foreground color to black
§

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

Change the background color to black
§

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

Change the foreground color to red
§

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

Change the background color to red
§

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

Change the foreground color to green
§

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

Change the background color to green
§

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

Change the foreground color to yellow
§

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

Change the background color to yellow
§

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

Change the foreground color to blue
§

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

Change the background color to blue
§

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

Change the foreground color to magenta
§

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

Change the background color to magenta
§

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

Change the foreground color to purple
§

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

Change the background color to purple
§

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

Change the foreground color to cyan
§

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

Change the background color to cyan
§

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

Change the foreground color to white
§

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

Change the background color to white
§

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

Change the foreground color to the terminal default
§

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

Change the background color to the terminal default
§

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

Change the foreground color to bright black
§

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

Change the background color to bright black
§

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

Change the foreground color to bright red
§

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

Change the background color to bright red
§

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

Change the foreground color to bright green
§

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

Change the background color to bright green
§

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

Change the foreground color to bright yellow
§

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

Change the background color to bright yellow
§

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

Change the foreground color to bright blue
§

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

Change the background color to bright blue
§

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

Change the foreground color to bright magenta
§

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

Change the background color to bright magenta
§

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

Change the foreground color to bright purple
§

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

Change the background color to bright purple
§

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

Change the foreground color to bright cyan
§

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

Change the background color to bright cyan
§

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

Change the foreground color to bright white
§

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

Change the background color to bright white
§

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

Make the text bold
§

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

Make the text dim
§

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

Make the text italicized
§

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

Make the text italicized
Make the text blink
Make the text blink (but fast!)
§

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

Swap the foreground and background colors
§

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

Hide the text
§

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

Cross out the text
§

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
§

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
§

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.
§

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.
§

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

Sets the foreground color to an RGB value.
§

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

Sets the background color to an RGB value.
§

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

Apply a runtime-determined style
source§

impl<E> Provider for Ewhere E: Error + ?Sized,

source§

fn provide<'a>(&'a self, demand: &mut Demand<'a>)

🔬This is a nightly-only experimental API. (provide_any)
Data providers should implement this method to provide all values they are able to provide by using demand. Read more
source§

impl<T> Serialize for Twhere T: Serialize + ?Sized,

source§

fn erased_serialize(&self, serializer: &mut dyn Serializer) -> Result<Ok, Error>

source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for Twhere T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

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

§

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 Twhere U: TryFrom<T>,

§

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> DeserializeOwned for Twhere T: for<'de> Deserialize<'de>,