pub trait NodeValue: Debug + Downcast {
    // Provided method
    fn render(&self, node: &Node, fmt: &mut dyn Renderer) { ... }
}
Expand description

Contents of the specific AST node.

Provided Methods§

source

fn render(&self, node: &Node, fmt: &mut dyn Renderer)

Output HTML corresponding to this node using Renderer API.

Example implementation looks like this:

fn render(&self, node: &Node, fmt: &mut dyn Renderer) {
   fmt.open("div", &[]);
   fmt.contents(&node.children);
   fmt.close("div");
   fmt.cr();
}

Implementations§

source§

impl dyn NodeValue

source

pub fn is<__T: NodeValue>(&self) -> bool

Returns true if the trait object wraps an object of type __T.

source

pub fn downcast<__T: NodeValue>(self: Box<Self>) -> Result<Box<__T>, Box<Self>>

Returns a boxed object from a boxed trait object if the underlying object is of type __T. Returns the original boxed trait if it isn’t.

source

pub fn downcast_rc<__T: NodeValue>(self: Rc<Self>) -> Result<Rc<__T>, Rc<Self>>

Returns an Rc-ed object from an Rc-ed trait object if the underlying object is of type __T. Returns the original Rc-ed trait if it isn’t.

source

pub fn downcast_ref<__T: NodeValue>(&self) -> Option<&__T>

Returns a reference to the object within the trait object if it is of type __T, or None if it isn’t.

source

pub fn downcast_mut<__T: NodeValue>(&mut self) -> Option<&mut __T>

Returns a mutable reference to the object within the trait object if it is of type __T, or None if it isn’t.

Implementors§