Parse all longhand properties that Servo seems to support.

This commit is contained in:
Simon Sapin 2013-08-13 20:17:08 +01:00
parent c1b7e157b7
commit 9ea09f9d0d
5 changed files with 513 additions and 0 deletions

21
parsing_utils.rs Normal file
View file

@ -0,0 +1,21 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use std::ascii::to_ascii_lower;
use cssparser::*;
pub fn one_component_value<'a>(input: &'a [ComponentValue]) -> Option<&'a ComponentValue> {
let mut iter = input.skip_whitespace();
iter.next().filtered(|_| iter.next().is_none())
}
pub fn get_ident_lower(component_value: &ComponentValue) -> Option<~str> {
match component_value {
&Ident(ref value) => Some(to_ascii_lower(value.as_slice())),
_ => None,
}
}