#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq, Hash)]
pub struct PropertyDeclarations(pub Vec<PropertyDeclaration>);
impl ToCss for PropertyDeclarations
{
fn to_css<W: fmt::Write>(&self, dest: &mut W) -> fmt::Result
{
for propertyDeclaration in self.0.iter()
{
propertyDeclaration.to_css(dest)?;
}
Ok(())
}
}
impl PropertyDeclarations
{
#[inline(always)]
pub fn is_empty(&self) -> bool
{
self.0.is_empty()
}
pub(crate) fn parse_property_declaration_list<'i: 't, 't>(context: &ParserContext, input: &mut Parser<'i, 't>, parsingAKeyFramePropertyDeclarationListSoImportantIsDisallowed: bool) -> Result<PropertyDeclarations, ParseError<'i, CustomParseError<'i>>>
{
let mut propertyDeclarations = Vec::new();
let mut parsedPropertyDeclarations = DeclarationListParser::new(input, PropertyDeclarationParser
{
context,
parsingAKeyFramePropertyDeclarationListSoImportantIsDisallowed,
});
while let Some(propertyDeclaration) = parsedPropertyDeclarations.next()
{
match propertyDeclaration
{
Ok(propertyDeclaration) => propertyDeclarations.push(propertyDeclaration),
Err(preciseParseError) => return Err(preciseParseError.error),
}
}
Ok(PropertyDeclarations(propertyDeclarations))
}
}