pub trait ThreadSafeLayoutNodeHelpers<'dom> {
    // Required methods
    fn borrow_layout_data(self) -> Option<AtomicRef<'dom, InnerLayoutData>>;
    fn mutate_layout_data(self) -> Option<AtomicRefMut<'dom, InnerLayoutData>>;
    fn flow_debug_id(self) -> usize;
    fn flags(self) -> LayoutDataFlags;
    fn insert_flags(self, new_flags: LayoutDataFlags);
    fn remove_flags(self, flags: LayoutDataFlags);
    fn text_content(&self) -> TextContent;
    fn restyle_damage(self) -> RestyleDamage;
}

Required Methods§

source

fn borrow_layout_data(self) -> Option<AtomicRef<'dom, InnerLayoutData>>

source

fn mutate_layout_data(self) -> Option<AtomicRefMut<'dom, InnerLayoutData>>

source

fn flow_debug_id(self) -> usize

source

fn flags(self) -> LayoutDataFlags

Returns the layout data flags for this node.

source

fn insert_flags(self, new_flags: LayoutDataFlags)

Adds the given flags to this node.

source

fn remove_flags(self, flags: LayoutDataFlags)

Removes the given flags from this node.

source

fn text_content(&self) -> TextContent

If this is a text node, generated content, or a form element, copies out its content. Otherwise, panics.

FIXME(pcwalton): This might have too much copying and/or allocation. Profile this.

source

fn restyle_damage(self) -> RestyleDamage

The RestyleDamage from any restyling, or RestyleDamage::rebuild_and_reflow() if this is the first time layout is visiting this node. We implement this here, rather than with the rest of the wrapper layer, because we need layout code to determine whether layout has visited the node.

Implementors§

source§

impl<'dom, T> ThreadSafeLayoutNodeHelpers<'dom> for T
where T: ThreadSafeLayoutNode<'dom>,