pub struct Narrator { /* private fields */ }Expand description
The app’s narrator. One per process, installed at the top of the serve path and read from everywhere afterwards — including the panic hook, which takes no arguments and is why this is a process global rather than a value threaded through the call graph.
Implementations§
Source§impl Narrator
impl Narrator
Sourcepub fn monotonic_ms(&self) -> u128
pub fn monotonic_ms(&self) -> u128
Milliseconds since this process started narrating.
Sourcepub fn memory(&self) -> Vec<u8> ⓘ
pub fn memory(&self) -> Vec<u8> ⓘ
Everything this narrator said so far, as rendered (gunnar: …\r\n).
Sourcepub fn at(&self, stage: Stage, detail: &str)
pub fn at(&self, stage: Stage, detail: &str)
Cross a boundary: remember it, then say it on all three readers.
Sourcepub fn say(&self, line: &str)
pub fn say(&self, line: &str)
One line, on every reader. The console (which on the appliance is
the serial line teed with the VGA screen), the wire, BOOTLOG.TXT on
the ESP and /data’s boot log. Every failure is swallowed: this is
diagnostics, and a narration that could refuse a boot would be worse
than no narration.
Auto Trait Implementations§
impl !Freeze for Narrator
impl RefUnwindSafe for Narrator
impl Send for Narrator
impl Sync for Narrator
impl Unpin for Narrator
impl UnsafeUnpin for Narrator
impl UnwindSafe for Narrator
Blanket Implementations§
impl<T> Allocation for T
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request