use {
crate::domain::SpecifiedUrl,
cssparser::{serialize_string, ToCss},
std::fmt,
};
#[derive(Clone, Debug, Eq, PartialEq)]
pub struct FontUrlSource {
pub url: SpecifiedUrl,
pub format_hints: Vec<String>,
}
impl ToCss for FontUrlSource {
fn to_css<W: fmt::Write>(&self, dest: &mut W) -> fmt::Result {
self.url.to_css(dest)?;
if !self.format_hints.is_empty() {
dest.write_str(" format(")?;
let mut formatHintsIterator = self.format_hints.iter();
serialize_string(formatHintsIterator.next().unwrap(), dest)?;
for formatHint in formatHintsIterator {
dest.write_char(',')?;
serialize_string(formatHint, dest)?;
}
dest.write_char(')')?;
}
Ok(())
}
}