INNER CODE UNIT · Rust
get_tag_attr
FooIbar/EhViewer · app/src/main/rust/src/lib.rs:134
fn get_tag_attr<'a>(tag: &'a HTMLTag<'_>, attr: &'a str) -> Option<&'a str> {
tag.attributes().get(attr)??.try_as_utf8_str()
}
// Should not use it at too upper node, since it will do DFS?
fn query_childs_first_match_attr<'a>(
node: &'a Node<'_>,
parser: &'a Parser,
attr: &'a str,
) -> Option<&'a str> {
let selector = format!("[{attr}]");
let mut iter = node.as_tag()?.query_selector(parser, &selector)?;
get_node_handle_attr(&iter.next()?, parser, attr)
}