Struct HtmlTreeSink

Source
pub struct HtmlTreeSink(pub RefCell<Html>);
Expand description

Wraps Html instances as sinks to drive parsing

Tuple Fields§

§0: RefCell<Html>

Implementations§

Source§

impl HtmlTreeSink

Source

pub fn new(html: Html) -> Self

Wrap a Htmlinstance as a sink to drive parsing

Trait Implementations§

Source§

impl Debug for HtmlTreeSink

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl TreeSink for HtmlTreeSink

Note: does not support the <template> element.

Source§

type Output = Html

The overall result of parsing. Read more
Source§

type Handle = NodeId

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.
Source§

type ElemName<'a> = Ref<'a, QualName>

Source§

fn finish(self) -> Html

Consume this sink and return the overall result of parsing. Read more
Source§

fn parse_error(&self, msg: Cow<'static, str>)

Signal a parse error.
Source§

fn set_quirks_mode(&self, mode: QuirksMode)

Set the document’s quirks mode.
Source§

fn get_document(&self) -> Self::Handle

Get a handle to the Document node.
Source§

fn same_node(&self, x: &Self::Handle, y: &Self::Handle) -> bool

Do two handles refer to the same node?
Source§

fn elem_name<'a>(&'a self, target: &Self::Handle) -> Ref<'a, QualName>

What is the name of this element? Read more
Source§

fn create_element( &self, name: QualName, attrs: Vec<Attribute>, _flags: ElementFlags, ) -> Self::Handle

Create an element. Read more
Source§

fn create_comment(&self, text: StrTendril) -> Self::Handle

Create a comment node.
Source§

fn append_doctype_to_document( &self, name: StrTendril, public_id: StrTendril, system_id: StrTendril, )

Append a DOCTYPE element to the Document node.
Source§

fn append(&self, parent: &Self::Handle, child: NodeOrText<Self::Handle>)

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: &Self::Handle, new_node: NodeOrText<Self::Handle>, )

Append a node as the sibling immediately before the given node. Read more
Source§

fn remove_from_parent(&self, target: &Self::Handle)

Detach the given node from its parent.
Source§

fn reparent_children(&self, node: &Self::Handle, new_parent: &Self::Handle)

Remove all the children from node and append them to new_parent.
Source§

fn add_attrs_if_missing(&self, target: &Self::Handle, 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 get_template_contents(&self, target: &Self::Handle) -> Self::Handle

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 mark_script_already_started(&self, _node: &Self::Handle)

Mark a HTML <script> as “already started”.
Source§

fn create_pi(&self, target: StrTendril, data: StrTendril) -> Self::Handle

Create a Processing Instruction node.
Source§

fn append_based_on_parent_node( &self, element: &Self::Handle, prev_element: &Self::Handle, child: NodeOrText<Self::Handle>, )

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)

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>), )

Associate the given form-associatable element with the form element
Source§

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)

Called whenever the line number changes.
Source§

fn complete_script(&self, _node: &Self::Handle) -> NextParserState

Indicate that a script element is complete.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.