Skip to main content

ProgramStatus

Struct ProgramStatus 

Source
pub struct ProgramStatus<'a> {
    pub state: ProgramStatusState<'a>,
    pub id: Option<&'a str>,
    pub kind: Option<ProgramStatusKind<'a>>,
    pub progress: Option<u8>,
    pub app: Option<&'a str>,
    pub title: Option<&'a str>,
    pub message: Option<&'a str>,
}
Expand description

A complete OSC 7501 report, with borrowed text.

Each report replaces its record, so include every field that should remain present. An absent app inherits from the nearest ancestor with one. Text and identifiers are validated by write_program_status before any output. Callers supply plain UTF-8, not base64.

Fields§

§state: ProgramStatusState<'a>

Required record state.

§id: Option<&'a str>

Optional record path. At most 128 bytes and eight slash-separated segments, each 1-32 bytes from [A-Za-z0-9_.+-]. None selects root.

§kind: Option<ProgramStatusKind<'a>>

Reason for blocking. Terminals use this only with state blocked.

§progress: Option<u8>

Percentage, from 0 to 100. Terminals use this only with state working or blocked. None means indeterminate progress.

§app: Option<&'a str>

Program name: 1-32 bytes from [A-Za-z0-9_.+-].

§title: Option<&'a str>

Human-readable record label, at most 192 UTF-8 bytes. C0, DEL, and C1 control characters are rejected.

§message: Option<&'a str>

Human-readable status message, at most 2048 UTF-8 bytes. C0, DEL, and C1 control characters are rejected.

Implementations§

Source§

impl<'a> ProgramStatus<'a>

Source

pub fn new(state: ProgramStatusState<'a>) -> Self

Create a root report with the specified state and no optional fields.

Trait Implementations§

Source§

impl<'a> Clone for ProgramStatus<'a>

Source§

fn clone(&self) -> ProgramStatus<'a>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl<'a> Debug for ProgramStatus<'a>

Source§

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

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

impl<'a> Eq for ProgramStatus<'a>

Source§

impl<'a> PartialEq for ProgramStatus<'a>

Source§

fn eq(&self, other: &ProgramStatus<'a>) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl<'a> StructuralPartialEq for ProgramStatus<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for ProgramStatus<'a>

§

impl<'a> RefUnwindSafe for ProgramStatus<'a>

§

impl<'a> Send for ProgramStatus<'a>

§

impl<'a> Sync for ProgramStatus<'a>

§

impl<'a> Unpin for ProgramStatus<'a>

§

impl<'a> UnsafeUnpin for ProgramStatus<'a>

§

impl<'a> UnwindSafe for ProgramStatus<'a>

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
§

impl<T> ErasedDestructor for T
where T: 'static,

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