pub struct DebugNode {Show 17 fields
pub id: u64,
pub parent: Option<u64>,
pub depth: usize,
pub children: Vec<u64>,
pub widget_name: String,
pub key: Option<String>,
pub layout_size: DebugSize,
pub assigned_slot: Option<DebugRect>,
pub absolute_bounds: DebugRect,
pub paint_bounds: Option<DebugRect>,
pub clip_bounds: Option<DebugRect>,
pub size_hint: DebugLayoutSizeHint,
pub flex_item: DebugFlexItem,
pub layout_debug: Option<DebugLayoutInfo>,
pub children_slots: Vec<DebugSlot>,
pub warnings: Vec<DebugWarning>,
pub has_layout: bool,
}Expand description
Flattened retained-tree node with layout, clip, style, and warning diagnostics.
Nodes are emitted in pre-order. Child IDs preserve retained child order, and
depth is zero for the requested root. Bounds are logical viewport pixels.
§Examples
use ailloli_ui_devtools_core::DebugNode;
fn describe(node: &DebugNode) -> (&str, usize, bool) {
(&node.widget_name, node.depth, node.has_layout)
}Fields§
§id: u64Numeric [ElementId] value.
parent: Option<u64>Parent ID, or None for the collected root.
depth: usizeEdge distance from the collected root.
children: Vec<u64>Child IDs in retained order, including children without layout.
widget_name: StringWidget debug name, or Empty/Component for structural nodes.
key: Option<String>String representation of the retained key, if any.
layout_size: DebugSizeLayout result size in logical pixels, or zero when layout is absent.
assigned_slot: Option<DebugRect>Parent-assigned absolute slot; None for roots or unlaid-out parents.
absolute_bounds: DebugRectBest available absolute bounds, falling back through layout and ancestor bounds.
paint_bounds: Option<DebugRect>Paint bounds translated by the node origin, when layout exists.
clip_bounds: Option<DebugRect>Bounding rectangle of the translated clip shape, when present.
size_hint: DebugLayoutSizeHintDeclarative width and height hints.
flex_item: DebugFlexItemFlex-item inputs attached by the parent-facing element.
layout_debug: Option<DebugLayoutInfo>Recorded layout-pass diagnostics, when runtime instrumentation retained them.
children_slots: Vec<DebugSlot>Parent-local and absolute slots paired with existing child IDs.
warnings: Vec<DebugWarning>Warnings attributed to this node, refreshed by compute_warnings.
has_layout: boolWhether this retained node currently has a layout result.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for DebugNode
impl<'de> Deserialize<'de> for DebugNode
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl StructuralPartialEq for DebugNode
Auto Trait Implementations§
impl Freeze for DebugNode
impl RefUnwindSafe for DebugNode
impl Send for DebugNode
impl Sync for DebugNode
impl Unpin for DebugNode
impl UnwindSafe for DebugNode
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<A> IntoClickAction<A> for Awhere
A: Clone + 'static,
impl<A> IntoClickAction<A> for Awhere
A: Clone + 'static,
§fn into_click_action(self) -> ClickAction<A>
fn into_click_action(self) -> ClickAction<A>
Implements the into_click_action helper used by this module.