pub struct Diagnostics { /* private fields */ }Expand description
The startup facts about this session’s renderer and build.
Constructed ONCE (BrepApp::new_with) and then read; there is no refresh,
because nothing it records can change without restarting the app.
Implementations§
Source§impl Diagnostics
impl Diagnostics
Sourcepub fn from_render_state(render_state: &RenderState) -> Self
pub fn from_render_state(render_state: &RenderState) -> Self
Capture the facts from the render state eframe built — the adapter and device that are ACTUALLY drawing this session.
Sourcepub fn rows(&self) -> Vec<(&'static str, String)>
pub fn rows(&self) -> Vec<(&'static str, String)>
The rows, in display order: (label, value). The Info window draws
these, Self::report_text joins these, and
Self::json keys off these — so no reader can show a field another
one lacks.
A row whose value is empty is dropped (a browser adapter reports no driver string, and a blank row reads as a missing value rather than an absent one).
Sourcepub fn report_text(&self) -> String
pub fn report_text(&self) -> String
The rows as one plain-text block, label: value per line, under a
heading. This is what a problem report carries; the window shows the
same rows in a grid.
Sourcepub fn json(&self) -> Value
pub fn json(&self) -> Value
The rows as a JSON object, for the automation surface (diagnostics)
and the __brepDiagnostics state blob.
Sourcepub fn adapter_line(&self) -> String
pub fn adapter_line(&self) -> String
One line naming the adapter and how it is reached — what the MCP banner
prints for the host that started the app. It reads this rather than
formatting AdapterInfo a second time, so the server’s banner and the
user’s Info window cannot name different hardware.
Trait Implementations§
Source§impl Clone for Diagnostics
impl Clone for Diagnostics
Source§fn clone(&self) -> Diagnostics
fn clone(&self) -> Diagnostics
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Diagnostics
impl Debug for Diagnostics
Source§impl PartialEq for Diagnostics
impl PartialEq for Diagnostics
impl StructuralPartialEq for Diagnostics
Auto Trait Implementations§
impl Freeze for Diagnostics
impl RefUnwindSafe for Diagnostics
impl Send for Diagnostics
impl Sync for Diagnostics
impl Unpin for Diagnostics
impl UnsafeUnpin for Diagnostics
impl UnwindSafe for Diagnostics
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>. Box<dyn Any> can
then be further downcast into Box<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>. Rc<Any> 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> DowncastSync for T
impl<T> DowncastSync for T
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 more