Skip to main content

as_kind_data

Macro as_kind_data 

Source
macro_rules! as_kind_data {
    ($arena:expr, $node_ref:expr, $variant:ident) => { ... };
    ($node:expr, $variant:ident) => { ... };
}
Expand description

Helper macro to work with kind data.

ยงExamples

use rushdown::ast::{Arena, NodeRef, KindData, Emphasis};
use rushdown::as_kind_data;

let mut arena = Arena::new();
let para_ref: NodeRef = arena.new_node(Emphasis::new(1));
let data = as_kind_data!(arena, para_ref, Emphasis);
assert_eq!(data.level(), 1);
let data = as_kind_data!(arena[para_ref], Emphasis);
assert_eq!(data.level(), 1);