pub struct Sink { /* private fields */ }Expand description
Receives new tree nodes during parsing.
Trait Implementations§
Source§impl TreeSink for Sink
Implements TreeSink for Sink.
impl TreeSink for Sink
Implements TreeSink for Sink.
Provides the html5ever TreeSink interface for building a DOM tree during HTML parsing. Handles node creation, tree manipulation, and parse error callbacks as the parser processes HTML content.
Source§type Handle = NodeRef
type Handle = NodeRef
Handle is a reference to a DOM node. The tree builder requires
that a Handle implements Clone to get another reference to
the same node.type ElemName<'a> = ExpandedName<'a> where Self: 'a
Source§fn finish(self) -> NodeRef
fn finish(self) -> NodeRef
Consume this sink and return the overall result of parsing. Read more
Source§fn parse_error(&self, message: Cow<'static, str>)
fn parse_error(&self, message: Cow<'static, str>)
Signal a parse error.
Source§fn get_document(&self) -> NodeRef
fn get_document(&self) -> NodeRef
Get a handle to the
Document node.Source§fn set_quirks_mode(&self, mode: QuirksMode)
fn set_quirks_mode(&self, mode: QuirksMode)
Set the document’s quirks mode.
Source§fn elem_name<'a>(&self, target: &'a NodeRef) -> ExpandedName<'a>
fn elem_name<'a>(&self, target: &'a NodeRef) -> ExpandedName<'a>
What is the name of this element? Read more
Source§fn create_element(
&self,
name: QualName,
attrs: Vec<Attribute>,
_flags: ElementFlags,
) -> NodeRef
fn create_element( &self, name: QualName, attrs: Vec<Attribute>, _flags: ElementFlags, ) -> NodeRef
Create an element. Read more
Source§fn create_comment(&self, text: StrTendril) -> NodeRef
fn create_comment(&self, text: StrTendril) -> NodeRef
Create a comment node.
Source§fn create_pi(&self, target: StrTendril, data: StrTendril) -> NodeRef
fn create_pi(&self, target: StrTendril, data: StrTendril) -> NodeRef
Create a Processing Instruction node.
Source§fn append(&self, parent: &NodeRef, child: NodeOrText<NodeRef>)
fn append(&self, parent: &NodeRef, child: NodeOrText<NodeRef>)
Append a node as the last child of the given node. If this would
produce adjacent sibling text nodes, it should concatenate the text
instead. Read more
Source§fn append_before_sibling(&self, sibling: &NodeRef, child: NodeOrText<NodeRef>)
fn append_before_sibling(&self, sibling: &NodeRef, child: NodeOrText<NodeRef>)
Append a node as the sibling immediately before the given node. Read more
Source§fn append_doctype_to_document(
&self,
name: StrTendril,
public_id: StrTendril,
system_id: StrTendril,
)
fn append_doctype_to_document( &self, name: StrTendril, public_id: StrTendril, system_id: StrTendril, )
Append a
DOCTYPE element to the Document node.Source§fn add_attrs_if_missing(&self, target: &NodeRef, attrs: Vec<Attribute>)
fn add_attrs_if_missing(&self, target: &NodeRef, attrs: Vec<Attribute>)
Add each attribute to the given element, if no attribute with that name
already exists. The tree builder promises this will never be called
with something else than an element.
Source§fn remove_from_parent(&self, target: &NodeRef)
fn remove_from_parent(&self, target: &NodeRef)
Detach the given node from its parent.
Source§fn reparent_children(&self, node: &NodeRef, new_parent: &NodeRef)
fn reparent_children(&self, node: &NodeRef, new_parent: &NodeRef)
Remove all the children from node and append them to new_parent.
Source§fn mark_script_already_started(&self, _node: &NodeRef)
fn mark_script_already_started(&self, _node: &NodeRef)
Mark a HTML
<script> as “already started”.Source§fn get_template_contents(&self, target: &NodeRef) -> NodeRef
fn get_template_contents(&self, target: &NodeRef) -> NodeRef
Get a handle to a template’s template contents. The tree builder
promises this will never be called with something else than
a template element.
Source§fn append_based_on_parent_node(
&self,
element: &NodeRef,
prev_element: &NodeRef,
child: NodeOrText<NodeRef>,
)
fn append_based_on_parent_node( &self, element: &NodeRef, prev_element: &NodeRef, child: NodeOrText<NodeRef>, )
When the insertion point is decided by the existence of a parent node of the
element, we consider both possibilities and send the element which will be used
if a parent node exists, along with the element to be used if there isn’t one.
Source§fn pop(&self, _node: &Self::Handle)
fn pop(&self, _node: &Self::Handle)
Indicate that a node was popped off the stack of open elements.
Source§fn associate_with_form(
&self,
_target: &Self::Handle,
_form: &Self::Handle,
_nodes: (&Self::Handle, Option<&Self::Handle>),
)
fn associate_with_form( &self, _target: &Self::Handle, _form: &Self::Handle, _nodes: (&Self::Handle, Option<&Self::Handle>), )
Associate the given form-associatable element with the form element
Source§fn is_mathml_annotation_xml_integration_point(
&self,
_handle: &Self::Handle,
) -> bool
fn is_mathml_annotation_xml_integration_point( &self, _handle: &Self::Handle, ) -> bool
Returns true if the adjusted current node is an HTML integration point
and the token is a start tag.
Source§fn set_current_line(&self, _line_number: u64)
fn set_current_line(&self, _line_number: u64)
Called whenever the line number changes.
fn allow_declarative_shadow_roots( &self, _intended_parent: &Self::Handle, ) -> bool
Auto Trait Implementations§
impl !Freeze for Sink
impl !RefUnwindSafe for Sink
impl !Send for Sink
impl !Sync for Sink
impl Unpin for Sink
impl !UnwindSafe for Sink
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
Mutably borrows from an owned value. Read more