#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq, Hash)]
pub struct AttrFunction(pub Rc<AttrExpression>);
impl ToCss for AttrFunction
{
fn to_css<W: fmt::Write>(&self, dest: &mut W) -> fmt::Result
{
dest.write_str("attr(")?;
self.0.to_css(dest)?;
dest.write_char(')')
}
}
impl<U: Unit> Expression<U> for AttrFunction
{
#[inline(always)]
fn evaluate<Conversion: FontRelativeLengthConversion<U::Number> + ViewportPercentageLengthConversion<U::Number> + PercentageConversion<U::Number> + AttributeConversion<U> + CssVariableConversion>(&self, conversion: &Conversion) -> Option<U::Number>
{
self.0.evaluate(conversion)
}
}