pub struct OngoingProgress<B, C> { /* private fields */ }Expand description
An ongoing stream of progress being reported to the client.
This struct is created by Progress::begin. See its documentation for more.
Implementations§
Source§impl OngoingProgress<Unbounded, NotCancellable>
impl OngoingProgress<Unbounded, NotCancellable>
Sourcepub async fn report<M>(&self, message: M)
pub async fn report<M>(&self, message: M)
Updates the secondary progress message visible in the client UI.
This message is expected to contain information complementary to the title string passed
into Client::progress, such as "3/25 files", "project/src/module2", or
"node_modules/some_dep".
§Initialization
This notification will only be sent if the server is initialized.
Source§impl OngoingProgress<Unbounded, Cancellable>
impl OngoingProgress<Unbounded, Cancellable>
Sourcepub async fn report(&self, enable_cancel_btn: bool)
pub async fn report(&self, enable_cancel_btn: bool)
Enables or disables the “cancel” button in the client UI.
§Initialization
This notification will only be sent if the server is initialized.
Sourcepub async fn report_with_message<M>(
&self,
message: M,
enable_cancel_btn: Option<bool>,
)
pub async fn report_with_message<M>( &self, message: M, enable_cancel_btn: Option<bool>, )
Updates the secondary progress message visible in the client UI and optionally enables/disables the “cancel” button.
This message is expected to contain information complementary to the title string passed
into Client::progress, such as "3/25 files", "project/src/module2", or
"node_modules/some_dep".
If enable_cancel_btn is None, the state of the “cancel” button in the UI is unchanged.
§Initialization
This notification will only be sent if the server is initialized.
Source§impl OngoingProgress<Bounded, NotCancellable>
impl OngoingProgress<Bounded, NotCancellable>
Sourcepub async fn report(&self, percentage: u32)
pub async fn report(&self, percentage: u32)
Updates the progress percentage displayed in the client UI, where a value of 100 for
example is considered 100% by the client.
§Initialization
This notification will only be sent if the server is initialized.
Sourcepub async fn report_with_message<M>(&self, message: M, percentage: u32)
pub async fn report_with_message<M>(&self, message: M, percentage: u32)
Same as OngoingProgress::report, except it also
displays an optional more detailed progress message.
This message is expected to contain information complementary to the title string passed
into Client::progress, such as "3/25 files", "project/src/module2", or
"node_modules/some_dep".
§Initialization
This notification will only be sent if the server is initialized.
Source§impl OngoingProgress<Bounded, Cancellable>
impl OngoingProgress<Bounded, Cancellable>
Sourcepub async fn report(&self, percentage: u32, enable_cancel_btn: Option<bool>)
pub async fn report(&self, percentage: u32, enable_cancel_btn: Option<bool>)
Updates the progress percentage displayed in the client UI, where a value of 100 for
example is considered 100% by the client.
If enable_cancel_btn is None, the state of the “cancel” button in the UI is unchanged.
§Initialization
This notification will only be sent if the server is initialized.
Sourcepub async fn report_with_message<M>(
&self,
message: M,
percentage: u32,
enable_cancel_btn: Option<bool>,
)
pub async fn report_with_message<M>( &self, message: M, percentage: u32, enable_cancel_btn: Option<bool>, )
Same as OngoingProgress::report, except it also
displays an optional more detailed progress message.
This message is expected to contain information complementary to the title string passed
into Client::progress, such as "3/25 files", "project/src/module2", or
"node_modules/some_dep".
§Initialization
This notification will only be sent if the server is initialized.
Source§impl<C> OngoingProgress<Bounded, C>
impl<C> OngoingProgress<Bounded, C>
Sourcepub fn into_unbounded(self) -> OngoingProgress<Unbounded, C>
pub fn into_unbounded(self) -> OngoingProgress<Unbounded, C>
Discards the progress bound associated with this OngoingProgress.
All subsequent progress reports will no longer show a percentage value.
Source§impl<B, C> OngoingProgress<B, C>
impl<B, C> OngoingProgress<B, C>
Sourcepub async fn finish(self)
pub async fn finish(self)
Indicates this long-running operation is complete.
§Initialization
This notification will only be sent if the server is initialized.
Sourcepub async fn finish_with_message<M>(self, message: M)
pub async fn finish_with_message<M>(self, message: M)
Same as OngoingProgress::finish, except it also displays an optional more detailed
progress message.
This message is expected to contain information complementary to the title string passed
into Client::progress, such as "3/25 files", "project/src/module2", or
"node_modules/some_dep".
§Initialization
This notification will only be sent if the server is initialized.
Sourcepub fn token(&self) -> &ProgressToken
pub fn token(&self) -> &ProgressToken
Returns the ProgressToken associated with this long-running operation.
Trait Implementations§
Auto Trait Implementations§
impl<B, C> !RefUnwindSafe for OngoingProgress<B, C>
impl<B, C> !UnwindSafe for OngoingProgress<B, C>
impl<B, C> Freeze for OngoingProgress<B, C>
impl<B, C> Send for OngoingProgress<B, C>
impl<B, C> Sync for OngoingProgress<B, C>
impl<B, C> Unpin for OngoingProgress<B, C>
impl<B, C> UnsafeUnpin for OngoingProgress<B, C>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<T> EvidenceKind for T
impl<T> EvidenceKind for T
default fn kind_label(&self) -> &'static str
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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 moreSource§impl<T> OnDrop for T
impl<T> OnDrop for T
Source§fn on_drop<F: FnOnce()>(self, on_drop: F) -> (Self, CancellationGuard<F>)
fn on_drop<F: FnOnce()>(self, on_drop: F) -> (Self, CancellationGuard<F>)
CancellationGuard that will call the given
closure when dropped.Source§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
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 bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
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>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
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 rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
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 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.
fn clear(&self) -> Painted<&T>
renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
Source§fn whenever(&self, value: Condition) -> Painted<&T>
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);