From 3be587606f7172354632bdbc339e0bf1d97ae2a2 Mon Sep 17 00:00:00 2001 From: Ms2ger Date: Sun, 4 Jan 2015 11:51:49 +0100 Subject: [PATCH] Import ast::ComponentValue more consistently. --- components/style/font_face.rs | 1 + components/style/media_queries.rs | 1 + components/style/namespaces.rs | 1 + components/style/parsing_utils.rs | 3 ++- components/style/properties/common_types.rs | 17 +++++++++-------- components/style/properties/mod.rs.mako | 10 ++++++---- components/style/selectors.rs | 1 + 7 files changed, 21 insertions(+), 13 deletions(-) diff --git a/components/style/font_face.rs b/components/style/font_face.rs index d724a190880..2e06f514510 100644 --- a/components/style/font_face.rs +++ b/components/style/font_face.rs @@ -3,6 +3,7 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use cssparser::ast::*; +use cssparser::ast::ComponentValue::*; use cssparser::parse_declaration_list; use errors::{ErrorLoggerIterator, log_css_error}; use std::ascii::AsciiExt; diff --git a/components/style/media_queries.rs b/components/style/media_queries.rs index 6ff7a412280..60a6ed5fc59 100644 --- a/components/style/media_queries.rs +++ b/components/style/media_queries.rs @@ -5,6 +5,7 @@ use std::ascii::AsciiExt; use cssparser::parse_rule_list; use cssparser::ast::*; +use cssparser::ast::ComponentValue::*; use errors::{ErrorLoggerIterator, log_css_error}; use geom::size::TypedSize2D; diff --git a/components/style/namespaces.rs b/components/style/namespaces.rs index cfcd3d8615e..b1e1df89cd7 100644 --- a/components/style/namespaces.rs +++ b/components/style/namespaces.rs @@ -3,6 +3,7 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use cssparser::ast::*; +use cssparser::ast::ComponentValue::*; use std::collections::HashMap; use servo_util::namespace; use errors::log_css_error; diff --git a/components/style/parsing_utils.rs b/components/style/parsing_utils.rs index 204c01a62a9..97ebb3cad4d 100644 --- a/components/style/parsing_utils.rs +++ b/components/style/parsing_utils.rs @@ -4,7 +4,8 @@ use std::ascii::AsciiExt; -use cssparser::ast::{ComponentValue, Ident, Comma, SkipWhitespaceIterable, SkipWhitespaceIterator}; +use cssparser::ast::{SkipWhitespaceIterable, SkipWhitespaceIterator}; +use cssparser::ast::ComponentValue::{mod, Ident, Comma}; pub fn one_component_value<'a>(input: &'a [ComponentValue]) -> Result<&'a ComponentValue, ()> { diff --git a/components/style/properties/common_types.rs b/components/style/properties/common_types.rs index f55d9ee7fb2..5a5f1a95f20 100644 --- a/components/style/properties/common_types.rs +++ b/components/style/properties/common_types.rs @@ -24,7 +24,7 @@ macro_rules! define_css_keyword_enum { impl $name { pub fn parse(component_value: &::cssparser::ast::ComponentValue) -> Result<$name, ()> { match component_value { - &::cssparser::ast::Ident(ref value) => { + &::cssparser::ast::ComponentValue::Ident(ref value) => { match_ignore_ascii_case! { value: $( $css => Ok($name::$variant) ),+ _ => Err(()) @@ -63,8 +63,9 @@ pub mod specified { use std::fmt; use std::fmt::{Formatter, Show}; use url::Url; - use cssparser::{mod, ast, ToCss, CssStringWriter}; + use cssparser::{mod, ToCss, CssStringWriter}; use cssparser::ast::*; + use cssparser::ast::ComponentValue::*; use text_writer::{mod, TextWriter}; use parsing_utils::{mod, BufferedIter, ParserIter}; use super::{Au, CSSFloat}; @@ -244,7 +245,7 @@ pub mod specified { &Dimension(ref value, ref unit) if negative_ok || value.value >= 0. => Length::parse_dimension(value.value, unit.as_slice()) .map(LengthOrPercentage::Length), - &ast::Percentage(ref value) if negative_ok || value.value >= 0. => + &Percentage(ref value) if negative_ok || value.value >= 0. => Ok(LengthOrPercentage::Percentage(value.value / 100.)), &Number(ref value) if value.value == 0. => Ok(LengthOrPercentage::Length(Length::Au(Au(0)))), @@ -289,7 +290,7 @@ pub mod specified { match input { &Dimension(ref value, ref unit) if negative_ok || value.value >= 0. => Length::parse_dimension(value.value, unit.as_slice()).map(LengthOrPercentageOrAuto::Length), - &ast::Percentage(ref value) if negative_ok || value.value >= 0. => + &Percentage(ref value) if negative_ok || value.value >= 0. => Ok(LengthOrPercentageOrAuto::Percentage(value.value / 100.)), &Number(ref value) if value.value == 0. => Ok(LengthOrPercentageOrAuto::Length(Length::Au(Au(0)))), @@ -335,7 +336,7 @@ pub mod specified { match input { &Dimension(ref value, ref unit) if negative_ok || value.value >= 0. => Length::parse_dimension(value.value, unit.as_slice()).map(LengthOrPercentageOrNone::Length), - &ast::Percentage(ref value) if negative_ok || value.value >= 0. + &Percentage(ref value) if negative_ok || value.value >= 0. => Ok(LengthOrPercentageOrNone::Percentage(value.value / 100.)), &Number(ref value) if value.value == 0. => Ok(LengthOrPercentageOrNone::Length(Length::Au(Au(0)))), &Ident(ref value) if value.as_slice().eq_ignore_ascii_case("none") => Ok(LengthOrPercentageOrNone::None), @@ -369,7 +370,7 @@ pub mod specified { match input { &Dimension(ref value, ref unit) => Length::parse_dimension(value.value, unit.as_slice()).map(PositionComponent::Length), - &ast::Percentage(ref value) => Ok(PositionComponent::Percentage(value.value / 100.)), + &Percentage(ref value) => Ok(PositionComponent::Percentage(value.value / 100.)), &Number(ref value) if value.value == 0. => Ok(PositionComponent::Length(Length::Au(Au(0)))), &Ident(ref value) => { if value.as_slice().eq_ignore_ascii_case("center") { Ok(PositionComponent::Center) } @@ -464,11 +465,11 @@ pub mod specified { pub fn from_component_value(component_value: &ComponentValue, base_url: &Url) -> Result { match component_value { - &ast::URL(ref url) => { + &URL(ref url) => { let image_url = super::parse_url(url.as_slice(), base_url); Ok(Image::Url(image_url)) }, - &ast::Function(ref name, ref args) => { + &Function(ref name, ref args) => { if name.as_slice().eq_ignore_ascii_case("linear-gradient") { Ok(Image::LinearGradient(try!( super::specified::LinearGradient::parse_function( diff --git a/components/style/properties/mod.rs.mako b/components/style/properties/mod.rs.mako index 5cadf89fd46..02e3886c522 100644 --- a/components/style/properties/mod.rs.mako +++ b/components/style/properties/mod.rs.mako @@ -14,6 +14,7 @@ pub use url::Url; pub use cssparser::*; pub use cssparser::ast::*; +pub use cssparser::ast::ComponentValue::*; pub use geom::SideOffsets2D; pub use self::common_types::specified::{Angle, AngleOrCorner}; pub use self::common_types::specified::{HorizontalDirection, VerticalDirection}; @@ -480,7 +481,7 @@ pub mod longhands { fn from_component_value(input: &ComponentValue, _: &Url) -> Result { match *input { Ident(ref keyword) if keyword.as_slice().eq_ignore_ascii_case("auto") => Ok(T::Auto), - ast::Number(ast::NumericValue { + Number(NumericValue { int_value: Some(value), .. }) => Ok(T::Number(value as i32)), @@ -563,9 +564,9 @@ pub mod longhands { pub fn from_component_value(input: &ComponentValue, _base_url: &Url) -> Result { match input { - &ast::Number(ref value) if value.value >= 0. => + &Number(ref value) if value.value >= 0. => Ok(SpecifiedValue::Number(value.value)), - &ast::Percentage(ref value) if value.value >= 0. => + &Percentage(ref value) if value.value >= 0. => Ok(SpecifiedValue::Percentage(value.value / 100.)), &Dimension(ref value, ref unit) if value.value >= 0. => specified::Length::parse_dimension(value.value, unit.as_slice()) @@ -829,7 +830,8 @@ pub mod longhands { pub fn from_component_value(component_value: &ComponentValue, base_url: &Url) -> Result { match component_value { - &ast::Ident(ref value) if value.as_slice().eq_ignore_ascii_case("none") => { + &Ident(ref value) + if value.as_slice().eq_ignore_ascii_case("none") => { Ok(CSSImage(None)) } _ => { diff --git a/components/style/selectors.rs b/components/style/selectors.rs index 4ad7e404cc9..5b5833d308d 100644 --- a/components/style/selectors.rs +++ b/components/style/selectors.rs @@ -7,6 +7,7 @@ use std::ascii::{AsciiExt, OwnedAsciiExt}; use sync::Arc; use cssparser::ast::*; +use cssparser::ast::ComponentValue::*; use cssparser::{tokenize, parse_nth}; use selector_matching::StylesheetOrigin;