mesdoc 0.2.1

An api to get ability to operate html document like jquery.
Documentation
use crate::constants::{NAME_SELECTOR_NAME, PRIORITY_NAME_SELECTOR};
use crate::interface::BoxDynElement;
use crate::selector::rule::{Matcher, MatcherData, Rule, RuleDefItem, RuleItem};

pub fn init(rules: &mut Vec<RuleItem>) {
	let rule = RuleDefItem(
		NAME_SELECTOR_NAME,
		"{identity}",
		PRIORITY_NAME_SELECTOR,
		vec![("identity", 0)],
		Box::new(|data: MatcherData| {
			let name = Rule::param(&data, "identity")
				.expect("The 'name' selector must have a tag name")
				.to_ascii_uppercase();
			Matcher {
				one_handle: Some(Box::new(move |ele: &BoxDynElement, _| {
					return ele.tag_name() == name;
				})),
				..Default::default()
			}
		}),
	);
	rules.push(rule.into());
}