Skip to main content

CompilerError

Enum CompilerError 

Source
pub enum CompilerError {
Show 66 variants InvalidCharacter { character: char, span: Span, }, UnterminatedString { span: Span, }, UnterminatedBlockComment { span: Span, }, InvalidUnicodeEscape { value: String, span: Span, }, InvalidNumber { value: String, span: Span, }, UnexpectedToken { expected: String, found: String, span: Span, }, UnexpectedEof { span: Span, }, UndefinedReference { name: String, span: Span, }, TypeMismatch { expected: String, found: String, span: Span, }, DuplicateDefinition { name: String, span: Span, }, ModuleNotFound { name: String, span: Span, }, ModuleReadError { path: String, error: String, span: Span, }, CircularImport { cycle: String, span: Span, }, PrivateImport { name: String, span: Span, }, ImportItemNotFound { item: String, module: String, available: String, span: Span, }, ParseError { message: String, span: Span, }, UndefinedType { name: String, span: Span, }, PrimitiveRedefinition { name: String, span: Span, }, TraitUsedAsValueType { trait_name: String, span: Span, }, UndefinedTrait { name: String, span: Span, }, NotATrait { name: String, actual_kind: String, span: Span, }, MissingTraitField { field: String, trait_name: String, span: Span, }, TraitFieldTypeMismatch { field: String, trait_name: String, expected: String, actual: String, span: Span, }, CircularDependency { cycle: String, span: Span, }, InvalidBinaryOp { op: String, left_type: String, right_type: String, span: Span, }, ForLoopNotArray { actual: String, span: Span, }, ArrayDestructuringNotArray { actual: String, span: Span, }, StructDestructuringNotStruct { actual: String, span: Span, }, InvalidIfCondition { actual: String, span: Span, }, MatchNotEnum { actual: String, span: Span, }, NonExhaustiveMatch { missing: String, span: Span, }, DuplicateMatchArm { variant: String, span: Span, }, UnknownEnumVariant { variant: String, enum_name: String, span: Span, }, VariantArityMismatch { variant: String, expected: usize, actual: usize, span: Span, }, MissingField { field: String, type_name: String, span: Span, }, UnknownField { field: String, type_name: String, span: Span, }, AssignmentToImmutable { span: Span, }, PositionalArgInStruct { struct_name: String, position: usize, span: Span, }, EnumVariantWithoutData { variant: String, enum_name: String, span: Span, }, EnumVariantRequiresData { variant: String, enum_name: String, span: Span, }, MutabilityMismatch { param: String, span: Span, }, UseAfterSink { name: String, span: Span, }, GenericArityMismatch { name: String, expected: usize, actual: usize, span: Span, }, GenericConstraintViolation { arg: String, constraint: String, span: Span, }, OutOfScopeTypeParameter { param: String, span: Span, }, MissingGenericArguments { name: String, span: Span, }, DuplicateGenericParam { param: String, span: Span, }, ExternFnWithBody { function: String, span: Span, }, RegularFnWithoutBody { function: String, span: Span, }, ExternImplWithBody { name: String, span: Span, }, RequiredParamAfterDefault { function: String, param: String, span: Span, }, NilAssignedToNonOptional { expected: String, span: Span, }, OptionalUsedAsNonOptional { actual: String, expected: String, span: Span, }, MissingTraitMethod { method: String, trait_name: String, span: Span, }, TraitMethodSignatureMismatch { method: String, trait_name: String, expected: String, actual: String, span: Span, }, AmbiguousCall { function: String, span: Span, }, NoMatchingOverload { function: String, span: Span, }, CannotInferEnumType { variant: String, span: Span, }, FunctionReturnTypeMismatch { function: String, expected: String, actual: String, span: Span, }, ExpressionDepthExceeded { span: Span, }, TooManyDefinitions { kind: &'static str, span: Span, }, VisibilityViolation { name: String, span: Span, }, ClosureCaptureEscapesLocalBinding { binding: String, span: Span, }, InternalError { detail: String, span: Span, }, NumericOverflow { written: String, target: PrimitiveType, span: Span, }, PublicClosureField { owner: String, field: String, span: Span, },
}
Expand description

Compiler error types

Variants§

§

InvalidCharacter

Fields

§character: char
§span: Span
§

UnterminatedString

Fields

§span: Span
§

UnterminatedBlockComment

Fields

§span: Span
§

InvalidUnicodeEscape

Fields

§value: String
§span: Span
§

InvalidNumber

Fields

§value: String
§span: Span
§

UnexpectedToken

Fields

§expected: String
§found: String
§span: Span
§

UnexpectedEof

Fields

§span: Span
§

UndefinedReference

Fields

§name: String
§span: Span
§

TypeMismatch

Fields

§expected: String
§found: String
§span: Span
§

DuplicateDefinition

Fields

§name: String
§span: Span
§

ModuleNotFound

Fields

§name: String
§span: Span
§

ModuleReadError

Fields

§path: String
§error: String
§span: Span
§

CircularImport

Fields

§cycle: String
§span: Span
§

PrivateImport

Fields

§name: String
§span: Span
§

ImportItemNotFound

Fields

§item: String
§module: String
§available: String
§span: Span
§

ParseError

Fields

§message: String
§span: Span
§

UndefinedType

Fields

§name: String
§span: Span
§

PrimitiveRedefinition

Fields

§name: String
§span: Span
§

TraitUsedAsValueType

A trait name appeared in a type position that produces a value (parameter, return, let annotation, struct/enum field, closure param/return). FormaLang has no dynamic dispatch — trait values must be passed via a generic-bounded parameter (fn foo<T: SomeTrait>(x: T)) so the concrete type is known after monomorphisation.

Fields

§trait_name: String
§span: Span
§

UndefinedTrait

Fields

§name: String
§span: Span
§

NotATrait

Fields

§name: String
§actual_kind: String
§span: Span
§

MissingTraitField

Fields

§field: String
§trait_name: String
§span: Span
§

TraitFieldTypeMismatch

Fields

§field: String
§trait_name: String
§expected: String
§actual: String
§span: Span
§

CircularDependency

Fields

§cycle: String
§span: Span
§

InvalidBinaryOp

Fields

§left_type: String
§right_type: String
§span: Span
§

ForLoopNotArray

Fields

§actual: String
§span: Span
§

ArrayDestructuringNotArray

Fields

§actual: String
§span: Span
§

StructDestructuringNotStruct

Fields

§actual: String
§span: Span
§

InvalidIfCondition

Fields

§actual: String
§span: Span
§

MatchNotEnum

Fields

§actual: String
§span: Span
§

NonExhaustiveMatch

Fields

§missing: String
§span: Span
§

DuplicateMatchArm

Fields

§variant: String
§span: Span
§

UnknownEnumVariant

Fields

§variant: String
§enum_name: String
§span: Span
§

VariantArityMismatch

Fields

§variant: String
§expected: usize
§actual: usize
§span: Span
§

MissingField

Fields

§field: String
§type_name: String
§span: Span
§

UnknownField

Fields

§field: String
§type_name: String
§span: Span
§

AssignmentToImmutable

Fields

§span: Span
§

PositionalArgInStruct

Fields

§struct_name: String
§position: usize
§span: Span
§

EnumVariantWithoutData

Fields

§variant: String
§enum_name: String
§span: Span
§

EnumVariantRequiresData

Fields

§variant: String
§enum_name: String
§span: Span
§

MutabilityMismatch

Fields

§param: String
§span: Span
§

UseAfterSink

Fields

§name: String
§span: Span
§

GenericArityMismatch

Fields

§name: String
§expected: usize
§actual: usize
§span: Span
§

GenericConstraintViolation

Fields

§constraint: String
§span: Span
§

OutOfScopeTypeParameter

Fields

§param: String
§span: Span
§

MissingGenericArguments

Fields

§name: String
§span: Span
§

DuplicateGenericParam

Fields

§param: String
§span: Span
§

ExternFnWithBody

An extern fn declaration includes a body, which is not allowed.

Fields

§function: String
§span: Span
§

RegularFnWithoutBody

A non-extern function is missing its body expression.

Fields

§function: String
§span: Span
§

ExternImplWithBody

An extern impl block contains at least one function with a body.

Fields

§name: String
§span: Span
§

RequiredParamAfterDefault

A parameter without a default value appears after one with a default value. Default values must be positional from the right (no required parameter may follow a defaulted one, excluding self).

Fields

§function: String
§param: String
§span: Span
§

NilAssignedToNonOptional

nil literal assigned to a non-optional type.

Fields

§expected: String
§span: Span
§

OptionalUsedAsNonOptional

Optional type used where a non-optional is required.

Fields

§actual: String
§expected: String
§span: Span
§

MissingTraitMethod

A trait implementation is missing a method required by the trait.

Fields

§method: String
§trait_name: String
§span: Span
§

TraitMethodSignatureMismatch

A method’s signature in an impl block does not match the trait’s declaration.

Fields

§method: String
§trait_name: String
§expected: String
§actual: String
§span: Span
§

AmbiguousCall

More than one overload of a function matches the call arguments.

Fields

§function: String
§span: Span
§

NoMatchingOverload

No overload of a function matches the call arguments.

Fields

§function: String
§span: Span
§

CannotInferEnumType

Fields

§variant: String
§span: Span
§

FunctionReturnTypeMismatch

Fields

§function: String
§expected: String
§actual: String
§span: Span
§

ExpressionDepthExceeded

Expression nesting exceeded the compiler recursion limit.

Fields

§span: Span
§

TooManyDefinitions

Module contains more definitions than the ID space allows (> u32::MAX).

Fields

§kind: &'static str
§span: Span
§

VisibilityViolation

Attempted to access a private item from outside its defining module.

Fields

§name: String
§span: Span
§

ClosureCaptureEscapesLocalBinding

A closure returned from a function captures a binding that does not outlive the function. Only sink parameters and outer-scope bindings may be captured by an escaping closure.

Fields

§binding: String
§span: Span
§

InternalError

A compiler invariant was violated during lowering or analysis. This is always a bug in the compiler itself — the detail field documents which invariant failed so it can be reported and fixed.

Fields

§detail: String
§span: Span
§

NumericOverflow

An integer literal does not fit in its declared (or default) target primitive — e.g. 2147483648I32 exceeds i32::MAX, or an unsuffixed 9_999_999_999 exceeds the I32 default.

Fields

§written: String
§span: Span
§

PublicClosureField

A pub struct or pub enum variant declares a field whose type is a closure. Closures are an internal abstraction; they cannot be part of a publicly exposed type because they have no stable representation across the module / backend boundary.

Fields

§owner: String

Human-readable identity of the offending item, e.g. "struct Form" or "enum Event variant submitted".

§field: String

Name of the closure-typed field.

§span: Span

Implementations§

Source§

impl CompilerError

Source

pub const fn span(&self) -> Span

Trait Implementations§

Source§

impl Clone for CompilerError

Source§

fn clone(&self) -> CompilerError

Returns a duplicate 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 CompilerError

Source§

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

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

impl Display for CompilerError

Source§

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

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

impl Error for CompilerError

1.30.0 · Source§

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

Returns 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, request: &mut Request<'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 PartialEq for CompilerError

Source§

fn eq(&self, other: &CompilerError) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for CompilerError

Source§

impl StructuralPartialEq for CompilerError

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> 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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> Fmt for T
where T: Display,

Source§

fn fg<C>(self, color: C) -> Foreground<Self>
where C: Into<Option<Color>>, Self: Display,

Give this value the specified foreground colour.
Source§

fn bg<C>(self, color: C) -> Background<Self>
where C: Into<Option<Color>>, Self: Display,

Give this value the specified background colour.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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<'src, T> IntoMaybe<'src, T> for T
where T: 'src,

Source§

type Proj<U: 'src> = U

Source§

fn map_maybe<R>( self, _f: impl FnOnce(&'src T) -> &'src R, g: impl FnOnce(T) -> R, ) -> <T as IntoMaybe<'src, T>>::Proj<R>
where R: 'src,

Source§

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

Source§

fn fg(&self, value: Color) -> Painted<&T>

Returns a styled value derived from self with the foreground set to value.

This method should be used rarely. Instead, prefer to use color-specific builder methods like red() and green(), which have the same functionality but are pithier.

§Example

Set foreground color to white using fg():

use yansi::{Paint, Color};

painted.fg(Color::White);

Set foreground color to white using white().

use yansi::Paint;

painted.white();
Source§

fn primary(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Primary].

§Example
println!("{}", value.primary());
Source§

fn fixed(&self, color: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Fixed].

§Example
println!("{}", value.fixed(color));
Source§

fn rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the fg() set to [Color :: Rgb].

§Example
println!("{}", value.rgb(r, g, b));
Source§

fn black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Black].

§Example
println!("{}", value.black());
Source§

fn red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Red].

§Example
println!("{}", value.red());
Source§

fn green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Green].

§Example
println!("{}", value.green());
Source§

fn yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Yellow].

§Example
println!("{}", value.yellow());
Source§

fn blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Blue].

§Example
println!("{}", value.blue());
Source§

fn magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Magenta].

§Example
println!("{}", value.magenta());
Source§

fn cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: Cyan].

§Example
println!("{}", value.cyan());
Source§

fn white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: White].

§Example
println!("{}", value.white());
Source§

fn bright_black(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlack].

§Example
println!("{}", value.bright_black());
Source§

fn bright_red(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightRed].

§Example
println!("{}", value.bright_red());
Source§

fn bright_green(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightGreen].

§Example
println!("{}", value.bright_green());
Source§

fn bright_yellow(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightYellow].

§Example
println!("{}", value.bright_yellow());
Source§

fn bright_blue(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightBlue].

§Example
println!("{}", value.bright_blue());
Source§

fn bright_magenta(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.bright_magenta());
Source§

fn bright_cyan(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightCyan].

§Example
println!("{}", value.bright_cyan());
Source§

fn bright_white(&self) -> Painted<&T>

Returns self with the fg() set to [Color :: BrightWhite].

§Example
println!("{}", value.bright_white());
Source§

fn bg(&self, value: Color) -> Painted<&T>

Returns a styled value derived from self with the background set to value.

This method should be used rarely. Instead, prefer to use color-specific builder methods like on_red() and on_green(), which have the same functionality but are pithier.

§Example

Set background color to red using fg():

use yansi::{Paint, Color};

painted.bg(Color::Red);

Set background color to red using on_red().

use yansi::Paint;

painted.on_red();
Source§

fn on_primary(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Primary].

§Example
println!("{}", value.on_primary());
Source§

fn on_fixed(&self, color: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Fixed].

§Example
println!("{}", value.on_fixed(color));
Source§

fn on_rgb(&self, r: u8, g: u8, b: u8) -> Painted<&T>

Returns self with the bg() set to [Color :: Rgb].

§Example
println!("{}", value.on_rgb(r, g, b));
Source§

fn on_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Black].

§Example
println!("{}", value.on_black());
Source§

fn on_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Red].

§Example
println!("{}", value.on_red());
Source§

fn on_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Green].

§Example
println!("{}", value.on_green());
Source§

fn on_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Yellow].

§Example
println!("{}", value.on_yellow());
Source§

fn on_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Blue].

§Example
println!("{}", value.on_blue());
Source§

fn on_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Magenta].

§Example
println!("{}", value.on_magenta());
Source§

fn on_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: Cyan].

§Example
println!("{}", value.on_cyan());
Source§

fn on_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: White].

§Example
println!("{}", value.on_white());
Source§

fn on_bright_black(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlack].

§Example
println!("{}", value.on_bright_black());
Source§

fn on_bright_red(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightRed].

§Example
println!("{}", value.on_bright_red());
Source§

fn on_bright_green(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightGreen].

§Example
println!("{}", value.on_bright_green());
Source§

fn on_bright_yellow(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightYellow].

§Example
println!("{}", value.on_bright_yellow());
Source§

fn on_bright_blue(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightBlue].

§Example
println!("{}", value.on_bright_blue());
Source§

fn on_bright_magenta(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightMagenta].

§Example
println!("{}", value.on_bright_magenta());
Source§

fn on_bright_cyan(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightCyan].

§Example
println!("{}", value.on_bright_cyan());
Source§

fn on_bright_white(&self) -> Painted<&T>

Returns self with the bg() set to [Color :: BrightWhite].

§Example
println!("{}", value.on_bright_white());
Source§

fn attr(&self, value: Attribute) -> Painted<&T>

Enables the styling Attribute value.

This method should be used rarely. Instead, prefer to use attribute-specific builder methods like bold() and underline(), which have the same functionality but are pithier.

§Example

Make text bold using attr():

use yansi::{Paint, Attribute};

painted.attr(Attribute::Bold);

Make text bold using using bold().

use yansi::Paint;

painted.bold();
Source§

fn bold(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Bold].

§Example
println!("{}", value.bold());
Source§

fn dim(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Dim].

§Example
println!("{}", value.dim());
Source§

fn italic(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Italic].

§Example
println!("{}", value.italic());
Source§

fn underline(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Underline].

§Example
println!("{}", value.underline());

Returns self with the attr() set to [Attribute :: Blink].

§Example
println!("{}", value.blink());

Returns self with the attr() set to [Attribute :: RapidBlink].

§Example
println!("{}", value.rapid_blink());
Source§

fn invert(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Invert].

§Example
println!("{}", value.invert());
Source§

fn conceal(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Conceal].

§Example
println!("{}", value.conceal());
Source§

fn strike(&self) -> Painted<&T>

Returns self with the attr() set to [Attribute :: Strike].

§Example
println!("{}", value.strike());
Source§

fn quirk(&self, value: Quirk) -> Painted<&T>

Enables the yansi Quirk value.

This method should be used rarely. Instead, prefer to use quirk-specific builder methods like mask() and wrap(), which have the same functionality but are pithier.

§Example

Enable wrapping using .quirk():

use yansi::{Paint, Quirk};

painted.quirk(Quirk::Wrap);

Enable wrapping using wrap().

use yansi::Paint;

painted.wrap();
Source§

fn mask(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Mask].

§Example
println!("{}", value.mask());
Source§

fn wrap(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Wrap].

§Example
println!("{}", value.wrap());
Source§

fn linger(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Linger].

§Example
println!("{}", value.linger());
Source§

fn clear(&self) -> Painted<&T>

👎Deprecated since 1.0.1:

renamed to resetting() due to conflicts with Vec::clear(). The clear() method will be removed in a future release.

Returns self with the quirk() set to [Quirk :: Clear].

§Example
println!("{}", value.clear());
Source§

fn resetting(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Resetting].

§Example
println!("{}", value.resetting());
Source§

fn bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: Bright].

§Example
println!("{}", value.bright());
Source§

fn on_bright(&self) -> Painted<&T>

Returns self with the quirk() set to [Quirk :: OnBright].

§Example
println!("{}", value.on_bright());
Source§

fn whenever(&self, value: Condition) -> Painted<&T>

Conditionally enable styling based on whether the Condition value applies. Replaces any previous condition.

See the crate level docs for more details.

§Example

Enable styling painted only when both stdout and stderr are TTYs:

use yansi::{Paint, Condition};

painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);
Source§

fn new(self) -> Painted<Self>
where Self: Sized,

Create a new Painted with a default Style. Read more
Source§

fn paint<S>(&self, style: S) -> Painted<&Self>
where S: Into<Style>,

Apply a style wholesale to self. Any previous style is replaced. Read more
Source§

impl<'p, T> Seq<'p, T> for T
where T: Clone,

Source§

type Item<'a> = &'a T where T: 'a

The item yielded by the iterator.
Source§

type Iter<'a> = Once<&'a T> where T: 'a

An iterator over the items within this container, by reference.
Source§

fn seq_iter(&self) -> <T as Seq<'p, T>>::Iter<'_>

Iterate over the elements of the container.
Source§

fn contains(&self, val: &T) -> bool
where T: PartialEq,

Check whether an item is contained within this sequence.
Source§

fn to_maybe_ref<'b>(item: <T as Seq<'p, T>>::Item<'b>) -> Maybe<T, &'p T>
where 'p: 'b,

Convert an item of the sequence into a MaybeRef.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

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 T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. 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> OrderedSeq<'_, T> for T
where T: Clone,