[][src]Function lol_html::rewrite_str

pub fn rewrite_str<'h, 's>(
    html: &str,
    settings: RewriteStrSettings<'h, 's>
) -> Result<String, RewritingError>

Rewrites given html string with the provided settings.

Example

use lol_html::{rewrite_str, element, RewriteStrSettings};

let output = rewrite_str(
    r#"<div><a href="http://example.com"></a></div>"#,
    RewriteStrSettings {
        element_content_handlers: vec![
            // Rewrite insecure hyperlinks
            element!("a[href]", |el| {
                let href = el
                    .get_attribute("href")
                    .unwrap()
                    .replace("http:", "https:");

                 el.set_attribute("href", &href).unwrap();

                 Ok(())
            })
        ],
        ..RewriteStrSettings::default()
    }
).unwrap();

assert_eq!(output, r#"<div><a href="https://example.com"></a></div>"#);