pub fn str(mut raw: &str, to: &mut String) {
while let Some(index) = raw.find(['\'', '"', '&', '<', '>']) {
to.push_str(&raw[..index]);
to.push_str(match raw.as_bytes()[index] {
b'\'' => "'",
b'"' => """,
b'&' => "&",
b'<' => "<",
b'>' => ">",
_ => "",
});
raw = &raw[index + 1..];
}
to.push_str(raw);
}
pub fn char(c: char, to: &mut String) {
match c {
'\'' => to.push_str("'"),
'"' => to.push_str("""),
'&' => to.push_str("&"),
'<' => to.push_str("<"),
'>' => to.push_str(">"),
_ => to.push(c),
}
}