Skip to main content

CheckRef

Struct CheckRef 

Source
pub struct CheckRef<'c, 'i, Split: SplitStrategy> {
    pub(crate) top: &'c Checker<Split>,
    pub(crate) context: ContextWrap<'c, 'i>,
    pub(crate) proof_state: &'i ProverState,
    pub(crate) solutions: MutableRefList<'i, Solutions>,
    pub(crate) messages: &'i mut SmallVec<CheckLogCow<'c>, 2>,
    pub(crate) cancel: &'i CancelToken<'i, Split::CancelToken>,
    pub(crate) added: u8,
    pub(crate) traced: bool,
}

Fieldsยง

ยงtop: &'c Checker<Split>ยงcontext: ContextWrap<'c, 'i>ยงproof_state: &'i ProverStateยงsolutions: MutableRefList<'i, Solutions>ยงmessages: &'i mut SmallVec<CheckLogCow<'c>, 2>ยงcancel: &'i CancelToken<'i, Split::CancelToken>ยงadded: u8ยงtraced: bool

Implementationsยง

Sourceยง

impl<Split: SplitStrategy> CheckRef<'_, '_, Split>

Source

pub(crate) fn get_declaration<T: IsDeclaration>( &self, uri: &SymbolUri, ) -> Result<SharedDeclaration<T>, ()>

ยงErrors
Source

pub(crate) fn get_symbol( &self, uri: &SymbolUri, ) -> Result<SharedDeclaration<Symbol>, ()>

ยงErrors
Source

pub(crate) fn get_symbol_type(&mut self, uri: &SymbolUri) -> Option<Term>

Source

pub(crate) fn get_symbol_definiens(&mut self, uri: &SymbolUri) -> Option<Term>

Source

pub fn get_variable( &self, uri: &DocumentElementUri, ) -> Result<SharedDocumentElement<VariableDeclaration>, ()>

ยงErrors
Source

pub(crate) fn get_var_definiens(&mut self, var: &Variable) -> Option<Term>

Sourceยง

impl<'t, Split: SplitStrategy> CheckRef<'t, '_, Split>

Source

pub fn check_equality(&mut self, lhs: &'t Term, rhs: &'t Term) -> Option<bool>

Source

pub(crate) fn check_equality_i( &mut self, lhs: &'t Term, rhs: &'t Term, ) -> Option<bool>

Source

fn congruence(&mut self, lhs: &'t Term, rhs: &'t Term) -> Option<bool>

Source

fn congruence_i(&mut self, lhs: &'t Term, rhs: &'t Term) -> Option<bool>

Source

fn congruence_cont(&mut self, lhs: &'t Term, rhs: &'t Term) -> Option<bool>

Source

fn congruence_app( &mut self, lhs: &'t ApplicationTerm, rhs: &'t ApplicationTerm, ) -> Option<bool>

Source

fn congruence_bind( &mut self, lhs: &'t BindingTerm, rhs: &'t BindingTerm, ) -> Option<bool>

Sourceยง

impl<'t, Split: SplitStrategy> CheckRef<'t, '_, Split>

Source

pub fn infer_type(&mut self, t: &'t Term) -> Option<Term>

Source

pub(crate) fn infer_type_i(&mut self, t: &'t Term) -> Option<Term>

Source

pub fn infer_var_type(&mut self, var: &'t Variable) -> Option<Term>

Source

pub(crate) fn infer_var_type_i(&mut self, var: &Variable) -> Option<Term>

Sourceยง

impl<Split: SplitStrategy> CheckRef<'_, '_, Split>

Source

pub const fn rules(&self) -> &RuleSet<Split>

Source

pub(crate) fn prepare( &self, t: Term, path: Option<&mut TermPath>, ) -> (Solutions, Term)

Source

pub(crate) fn revert_prepare(&self, t: Term) -> Term

Source

pub fn get_head( &self, t: &Term, ) -> Option<Either<SharedDeclaration<Symbol>, SharedDocumentElement<VariableDeclaration>>>

Source

fn push_down_implicits(term: Term) -> Term

Source

fn prepare_i( &mut self, t: Term, path: Option<(&mut SmallVec<u8, 16>, usize)>, ) -> Term

Source

fn revert_i(&mut self, t: Term) -> Term

Source

fn prepare_recurse( &mut self, term: Term, then: fn(&mut CheckRef<'_, '_, Split>, Term, Option<(&mut SmallVec<u8, 16>, usize)>) -> Term, path: Option<(&mut SmallVec<u8, 16>, usize)>, ) -> Term

Source

fn prepare_cv( &mut self, cv: &ComponentVar, then: fn(&mut Self, Term, Option<(&mut SmallVec<u8, 16>, usize)>) -> Term, path: Option<(&mut SmallVec<u8, 16>, usize)>, ) -> ComponentVar

Sourceยง

impl<'t, Split: SplitStrategy> CheckRef<'t, '_, Split>

Source

pub fn prove(&mut self, goal: &'t Term) -> Option<Term>

Source

pub(crate) fn prove_i(&mut self, goal: &'t Term) -> Option<Term>

Source

fn backchain(&mut self, goal: &'t Term) -> Option<Term>

Sourceยง

impl<'t, Split: SplitStrategy> CheckRef<'t, '_, Split>

Source

pub fn simplify_full(&mut self, expand: bool, term: &'t Term) -> Option<Term>

Source

fn simplify_full_first( &mut self, expand: bool, term: &'t Term, recursion_limit: &mut usize, total_limit: &mut usize, ) -> Option<Cow<'t, Term>>

Source

fn simplify_full_i( &mut self, expand: bool, term: &'t Term, recursion_limit: &mut usize, total_limit: &mut usize, ) -> Option<Term>

Source

pub fn simplify_until( &mut self, term: &'t Term, until: impl FnMut(&Self, &Term) -> bool, ) -> Option<Cow<'t, Term>>

Source

fn simplify_until_i( &mut self, term: &'t Term, until: impl FnMut(&Self, &Term) -> bool, recursion_limit: &mut usize, total_limit: &mut usize, ) -> Option<Cow<'t, Term>>

Source

pub(crate) fn simplify_rules<Rl: CheckerRule + ?Sized, R>( &mut self, rules: &'t [Box<Rl>], term: &'t Term, applicable: impl Fn(&Rl, &Term) -> bool, apply: impl for<'s> Fn(CheckRef<'s, '_, Split>, &Rl, &'s Term) -> Option<R> + Send + Sync, ) -> Option<R>
where R: Send + Sync + Debug + Clone + 'static,

Source

pub(crate) fn simplify_until_two( &mut self, term1: &'t Term, term2: &'t Term, until: impl FnMut(&Self, &Term, &Term) -> bool, ) -> Option<(Cow<'t, Term>, Cow<'t, Term>)>

Source

pub(crate) fn simplify_rules_two<Rl: CheckerRule + ?Sized + 'static, R>( &mut self, rules: &'t [Box<Rl>], term1: &'t Term, term2: &'t Term, applicable: impl Fn(&CheckRef<'_, '_, Split>, &Rl, &Term, &Term) -> bool, apply: impl for<'s> Fn(CheckRef<'s, '_, Split>, &Rl, &'s Term, &'s Term) -> Option<R> + Sync, abort: impl Fn(&Term, &Term) -> bool + Send + Sync, ) -> Either<Option<R>, (Term, Term)>
where R: Send + Sync + Debug + Clone + 'static,

Source

fn simplify_one(&mut self, expand: bool, term: &'t Term) -> Option<Term>

Source

fn simplify_one_i(&mut self, expand: bool, term: &'t Term) -> Option<Term>

Source

pub(crate) fn simplify_implicit(&mut self, term: &'t Term) -> Option<Term>

Source

fn simplify_one_default(&mut self, expand: bool, term: &'t Term) -> Option<Term>

Source

fn arg_full( &mut self, expand: bool, arg: &'t Argument, recursion_limit: &mut usize, total_limit: &mut usize, ) -> Option<Argument>

Source

fn bound_arg_full( &mut self, expand: bool, arg: &'t BoundArgument, recusion_limit: &mut usize, total_limit: &mut usize, ) -> Option<BoundArgument>

Source

fn cv_full( &mut self, expand: bool, arg: &'t ComponentVar, recursion_limit: &mut usize, total_limit: &mut usize, ) -> Option<ComponentVar>

Sourceยง

impl<Split: SplitStrategy> CheckRef<'_, '_, Split>

Source

pub fn new_solvable(&mut self) -> Term

Source

pub(crate) fn solve_equality( &mut self, unk: &Id, solution: &Term, ) -> Option<bool>

Source

pub(crate) fn solve_upper_bound( &mut self, unk: &Id, bound: &Term, ) -> Option<bool>

Source

pub(crate) fn solve_lower_bound( &mut self, unk: &Id, bound: &Term, ) -> Option<bool>

Source

pub(crate) fn merge_solutions(&mut self, solutions: Solutions)

Source

fn add_solvable(&mut self, name: Id)

Source

pub fn get_solution(&self, name: &Id) -> Option<Term>

Source

fn get_solvable<'s>(&'s self, name: &Id) -> Option<&'s Solvable>

Source

pub(crate) fn get_solvable_type(&mut self, name: &Id) -> Term

Source

fn solve(&mut self, name: Id, solution: Term) -> Option<()>

Source

fn solve_type(&mut self, name: Id, tp: Term)

Source

pub(crate) fn subst(&self, term: Term) -> Term

Sourceยง

impl<'t, Split: SplitStrategy> CheckRef<'t, '_, Split>

Source

pub fn check_type(&mut self, tm: &'t Term, tp: &'t Term) -> Option<bool>

Source

pub fn check_subtype(&mut self, sub: &'t Term, sup: &'t Term) -> Option<bool>

Source

pub fn check_inhabitable(&mut self, t: &'t Term) -> Option<bool>

Source

pub fn check_universe(&mut self, t: &'t Term) -> Option<bool>

Source

pub(crate) fn check_type_i( &mut self, tm: &'t Term, tp: &'t Term, ) -> Option<bool>

Source

pub(crate) fn check_subtype_i( &mut self, sub: &'t Term, sup: &'t Term, ) -> Option<bool>

Source

pub(crate) fn check_inhabitable_i(&mut self, tm: &'t Term) -> Option<bool>

Source

fn check_universe_i(&mut self, tm: &'t Term) -> Option<bool>

Sourceยง

impl<'c, 'i, Split: SplitStrategy> CheckRef<'c, 'i, Split>

Source

pub fn extend_context<C: CowLike<'c>>(&mut self, var: C)

Source

pub fn add_msg(&mut self, line: CheckLogCow<'c>)

Source

pub fn comment(&mut self, msg: impl Into<Cow<'static, str>>)

Source

pub fn counter(&mut self, msg: &'static str, num: usize)

Source

pub fn failure(&mut self, msg: impl Into<Cow<'static, str>>)

Source

pub(crate) fn split(&mut self) -> (&[Cow<'c, ComponentVar>], Trace<'c, '_>)

Source

pub fn iter_context(&self) -> impl ExactSizeIterator<Item = &ComponentVar>

Source

pub(crate) fn traced<R: Clone>( &mut self, tsk: CheckingTask<'c>, f: impl FnOnce(&mut Self) -> Option<R>, ) -> Result<R, RefCheckLog<'c>>

Source

pub(crate) fn untraced<R: Clone>( &mut self, task: CheckingTask<'c>, f: impl FnOnce(&mut Self) -> Option<R>, ) -> Option<R>

Source

pub(crate) fn traced_inner<R: Clone>( &mut self, task: CheckingTask<'c>, f: impl FnOnce(&mut Self) -> Option<R>, ) -> (Option<R>, RefCheckLog<'c>)

Source

pub const fn depth(&self) -> usize

Source

pub(crate) fn branch_traced<R: Clone>( &mut self, task: CheckingTask<'c>, f: impl FnOnce(CheckRef<'c, '_, Split>) -> Option<R>, ) -> Result<R, RefCheckLog<'c>>

Source

pub fn scoped<'nt, R: Send + Sync + 'static>( &'nt mut self, f: impl FnOnce(&mut CheckRef<'nt, '_, Split>) -> R, ) -> R

Source

pub(crate) fn copied(&self) -> CheckRefBranch<'c, 'i, Split>

Source

pub(crate) fn cancellable<R: Send>( &mut self, f: impl FnOnce(&mut Self) -> R, ) -> R

Source

pub(crate) fn wrap_check<R: Clone>( &mut self, task: CheckingTask<'c>, f: impl FnOnce(&mut Self) -> Option<R>, ) -> Option<R>

Sourceยง

impl<Split: SplitStrategy> CheckRef<'_, '_, Split>

Source

pub fn facts_for( &self, goal: &Term, ) -> impl Iterator<Item = (GlobalOrLocal, Vec<GoalPremise>)>

Trait Implementationsยง

Sourceยง

impl<Split: SplitStrategy> Drop for CheckRef<'_, '_, Split>

Sourceยง

fn drop(&mut self)

Executes the destructor for this type. Read more
Sourceยง

fn pin_drop(self: Pin<&mut Self>)

๐Ÿ”ฌThis is a nightly-only experimental API. (pin_ergonomics)
Execute the destructor for this type, but different to Drop::drop, it requires self to be pinned. Read more

Auto Trait Implementationsยง

ยง

impl<'c, 'i, Split> Freeze for CheckRef<'c, 'i, Split>

ยง

impl<'c, 'i, Split> !RefUnwindSafe for CheckRef<'c, 'i, Split>

ยง

impl<'c, 'i, Split> Send for CheckRef<'c, 'i, Split>

ยง

impl<'c, 'i, Split> Sync for CheckRef<'c, 'i, Split>

ยง

impl<'c, 'i, Split> Unpin for CheckRef<'c, 'i, Split>

ยง

impl<'c, 'i, Split> UnsafeUnpin for CheckRef<'c, 'i, Split>

ยง

impl<'c, 'i, Split> !UnwindSafe for CheckRef<'c, 'i, Split>

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
ยง

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

ยง

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

Converts Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.
ยง

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Converts Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
ยง

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

Converts &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Anyโ€™s vtable from &Traitโ€™s.
ยง

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

Converts &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Anyโ€™s vtable from &mut Traitโ€™s.
ยง

impl<T> DowncastSend for T
where T: Any + Send,

ยง

fn into_any_send(self: Box<T>) -> Box<dyn Any + Send>

Converts Box<Trait> (where Trait: DowncastSend) to Box<dyn Any + Send>, which can then be downcast into Box<ConcreteType> where ConcreteType implements Trait.
ยง

impl<T> DowncastSync for T
where T: Any + Send + Sync,

ยง

fn into_any_sync(self: Box<T>) -> Box<dyn Any + Sync + Send>

Converts Box<Trait> (where Trait: DowncastSync) to Box<dyn Any + Send + Sync>, which can then be downcast into Box<ConcreteType> where ConcreteType implements Trait.
ยง

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send> โ“˜

Converts Arc<Trait> (where Trait: DowncastSync) to Arc<Any>, which can then be downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Sourceยง

impl<T> From<T> for T

Sourceยง

fn from(t: T) -> T

Returns the argument unchanged.

ยง

impl<E, T, Request, Encoding> FromReq<Patch<Encoding>, Request, E> for T
where Request: Req<E> + Send + 'static, Encoding: Decodes<T>, E: FromServerFnError,

ยง

async fn from_req(req: Request) -> Result<T, E>

Attempts to deserialize the arguments from a request.
ยง

impl<E, T, Request, Encoding> FromReq<Post<Encoding>, Request, E> for T
where Request: Req<E> + Send + 'static, Encoding: Decodes<T>, E: FromServerFnError,

ยง

async fn from_req(req: Request) -> Result<T, E>

Attempts to deserialize the arguments from a request.
ยง

impl<E, T, Request, Encoding> FromReq<Put<Encoding>, Request, E> for T
where Request: Req<E> + Send + 'static, Encoding: Decodes<T>, E: FromServerFnError,

ยง

async fn from_req(req: Request) -> Result<T, E>

Attempts to deserialize the arguments from a request.
ยง

impl<E, Encoding, Response, T> FromRes<Patch<Encoding>, Response, E> for T
where Response: ClientRes<E> + Send, Encoding: Decodes<T>, E: FromServerFnError,

ยง

async fn from_res(res: Response) -> Result<T, E>

Attempts to deserialize the outputs from a response.
ยง

impl<E, Encoding, Response, T> FromRes<Post<Encoding>, Response, E> for T
where Response: ClientRes<E> + Send, Encoding: Decodes<T>, E: FromServerFnError,

ยง

async fn from_res(res: Response) -> Result<T, E>

Attempts to deserialize the outputs from a response.
ยง

impl<E, Encoding, Response, T> FromRes<Put<Encoding>, Response, E> for T
where Response: ClientRes<E> + Send, Encoding: Decodes<T>, E: FromServerFnError,

ยง

async fn from_res(res: Response) -> Result<T, E>

Attempts to deserialize the outputs from a response.
ยง

impl<T> Instrument for T

ยง

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

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
ยง

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> 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
ยง

impl<E, T, Encoding, Request> IntoReq<Patch<Encoding>, Request, E> for T
where Request: ClientReq<E>, Encoding: Encodes<T>, E: FromServerFnError,

ยง

fn into_req(self, path: &str, accepts: &str) -> Result<Request, E>

Attempts to serialize the arguments into an HTTP request.
ยง

impl<E, T, Encoding, Request> IntoReq<Post<Encoding>, Request, E> for T
where Request: ClientReq<E>, Encoding: Encodes<T>, E: FromServerFnError,

ยง

fn into_req(self, path: &str, accepts: &str) -> Result<Request, E>

Attempts to serialize the arguments into an HTTP request.
ยง

impl<E, T, Encoding, Request> IntoReq<Put<Encoding>, Request, E> for T
where Request: ClientReq<E>, Encoding: Encodes<T>, E: FromServerFnError,

ยง

fn into_req(self, path: &str, accepts: &str) -> Result<Request, E>

Attempts to serialize the arguments into an HTTP request.
ยง

impl<E, Response, Encoding, T> IntoRes<Patch<Encoding>, Response, E> for T
where Response: TryRes<E>, Encoding: Encodes<T>, E: FromServerFnError + Send, T: Send,

ยง

async fn into_res(self) -> Result<Response, E>

Attempts to serialize the output into an HTTP response.
ยง

impl<E, Response, Encoding, T> IntoRes<Post<Encoding>, Response, E> for T
where Response: TryRes<E>, Encoding: Encodes<T>, E: FromServerFnError + Send, T: Send,

ยง

async fn into_res(self) -> Result<Response, E>

Attempts to serialize the output into an HTTP response.
ยง

impl<E, Response, Encoding, T> IntoRes<Put<Encoding>, Response, E> for T
where Response: TryRes<E>, Encoding: Encodes<T>, E: FromServerFnError + Send, T: Send,

ยง

async fn into_res(self) -> Result<Response, E>

Attempts to serialize the output into an HTTP response.
ยง

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(&self) -> FgColorDisplay<'_, Black, Self>

Change the foreground color to black
ยง

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

Change the background color to black
ยง

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

Change the foreground color to red
ยง

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

Change the background color to red
ยง

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

Change the foreground color to green
ยง

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

Change the background color to green
ยง

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

Change the foreground color to yellow
ยง

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

Change the background color to yellow
ยง

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

Change the foreground color to blue
ยง

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

Change the background color to blue
ยง

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

Change the foreground color to magenta
ยง

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

Change the background color to magenta
ยง

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

Change the foreground color to purple
ยง

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

Change the background color to purple
ยง

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

Change the foreground color to cyan
ยง

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

Change the background color to cyan
ยง

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

Change the foreground color to white
ยง

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

Change the background color to white
ยง

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

Change the foreground color to the terminal default
ยง

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

Change the background color to the terminal default
ยง

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

Change the foreground color to bright black
ยง

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

Change the background color to bright black
ยง

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

Change the foreground color to bright red
ยง

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

Change the background color to bright red
ยง

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

Change the foreground color to bright green
ยง

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

Change the background color to bright green
ยง

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

Change the foreground color to bright yellow
ยง

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

Change the background color to bright yellow
ยง

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

Change the foreground color to bright blue
ยง

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

Change the background color to bright blue
ยง

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

Change the foreground color to bright magenta
ยง

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

Change the background color to bright magenta
ยง

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

Change the foreground color to bright purple
ยง

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

Change the background color to bright purple
ยง

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

Change the foreground color to bright cyan
ยง

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

Change the background color to bright cyan
ยง

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

Change the foreground color to bright white
ยง

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

Change the background color to bright white
ยง

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

Make the text bold
ยง

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

Make the text dim
ยง

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

Make the text italicized
ยง

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

Make the text underlined
Make the text blink
Make the text blink (but fast!)
ยง

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

Swap the foreground and background colors
ยง

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

Hide the text
ยง

fn strikethrough(&self) -> StrikeThroughDisplay<'_, 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
ยง

fn if_supports_color<'a, Out, ApplyFn>( &'a self, stream: impl Into<Stream>, apply: ApplyFn, ) -> SupportsColorsDisplay<'a, Self, Out, ApplyFn>
where ApplyFn: Fn(&'a Self) -> Out,

Apply a given transformation function to all formatters if the given stream supports at least basic ANSI colors, allowing you to conditionally apply given styles/colors. Read more
ยง

impl<T> Pointable for T

ยง

const ALIGN: usize

The alignment of pointer.
ยง

type Init = T

The type for initializers.
ยง

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

Initializes a with the given initializer. Read more
ยง

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

Dereferences the given pointer. Read more
ยง

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

Mutably dereferences the given pointer. Read more
ยง

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
ยง

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

ยง

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
ยง

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
Sourceยง

impl<T> Same for T

Sourceยง

type Output = T

Should always be Self
ยง

impl<T> SerializableKey for T

ยง

fn ser_key(&self) -> String

Serializes the key to a unique string. Read more
ยง

impl<T> StorageAccess<T> for T

ยง

fn as_borrowed(&self) -> &T

Borrows the value.
ยง

fn into_taken(self) -> T

Takes the value.
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<S, T> Upcast<T> for S
where T: UpcastFrom<S> + ?Sized, S: ?Sized,

Sourceยง

fn upcast(&self) -> &T
where Self: ErasableGeneric, T: ErasableGeneric<Repr = Self::Repr>,

Perform a zero-cost type-safe upcast to a wider ref type within the Wasm bindgen generics type system. Read more
Sourceยง

fn upcast_into(self) -> T
where Self: Sized + ErasableGeneric, T: ErasableGeneric<Repr = Self::Repr>,

Perform a zero-cost type-safe upcast to a wider type within the Wasm bindgen generics type system. Read more
ยง

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

ยง

fn vzip(self) -> V

ยง

impl<T> WithSubscriber for T

ยง

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
ยง

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> Fruit for T
where T: Send + Downcast,