#![allow(clippy::print_stdout)]
use brik::parse_html;
use brik::traits::*;
fn main() {
let document = parse_html().one(
r#"
<html>
<body>
<p class="greeting">Hello, world!</p>
</body>
</html>
"#,
);
if let Ok(match_) = document.select_first(".greeting") {
let node = match_.as_node();
println!("{}", node.text_contents()); }
let new_paragraph = parse_html().one("<p>New content</p>");
document
.select_first("body")
.unwrap()
.as_node()
.append(new_paragraph.first_child().unwrap());
let mut html_bytes = Vec::new();
document.serialize(&mut html_bytes).unwrap();
println!("\nSerialized HTML ({} bytes):", html_bytes.len());
let html_string = String::from_utf8(html_bytes).expect("HTML should be valid UTF-8");
println!("{html_string}");
}