mirror of
https://github.com/servo/servo.git
synced 2025-08-06 06:00:15 +01:00
style: [css-nesting] Update cssparser to allow parsing qualified rules along with declaration
No implementation just yet (the default QualifiedRuleParser implementation just rejects stuff), but this is plumbing that I'd rather get reviewed separately. Differential Revision: https://phabricator.services.mozilla.com/D176686
This commit is contained in:
parent
93e0711194
commit
6f090b8a85
8 changed files with 76 additions and 25 deletions
|
@ -16,18 +16,20 @@ use crate::values::computed::font::{FamilyName, FontStretch};
|
|||
use crate::values::generics::font::FontStyle as GenericFontStyle;
|
||||
#[cfg(feature = "gecko")]
|
||||
use crate::values::specified::font::MetricsOverride;
|
||||
#[cfg(feature = "gecko")]
|
||||
use crate::values::specified::font::{FontFeatureSettings, FontVariationSettings};
|
||||
use crate::values::specified::font::SpecifiedFontStyle;
|
||||
use crate::values::specified::font::{AbsoluteFontWeight, FontStretch as SpecifiedFontStretch};
|
||||
#[cfg(feature = "gecko")]
|
||||
use crate::values::specified::font::{FontFeatureSettings, FontVariationSettings};
|
||||
use crate::values::specified::url::SpecifiedUrl;
|
||||
use crate::values::specified::Angle;
|
||||
#[cfg(feature = "gecko")]
|
||||
use crate::values::specified::NonNegativePercentage;
|
||||
#[cfg(feature = "gecko")]
|
||||
use cssparser::UnicodeRange;
|
||||
use cssparser::{AtRuleParser, DeclarationListParser, DeclarationParser, Parser};
|
||||
use cssparser::{CowRcStr, SourceLocation};
|
||||
use cssparser::{
|
||||
AtRuleParser, CowRcStr, DeclarationListParser, DeclarationParser, Parser, QualifiedRuleParser,
|
||||
SourceLocation,
|
||||
};
|
||||
use selectors::parser::SelectorParseErrorKind;
|
||||
use std::fmt::{self, Write};
|
||||
use style_traits::{CssWriter, ParseError};
|
||||
|
@ -558,6 +560,12 @@ impl<'a, 'b, 'i> AtRuleParser<'i> for FontFaceRuleParser<'a, 'b> {
|
|||
type Error = StyleParseErrorKind<'i>;
|
||||
}
|
||||
|
||||
impl<'a, 'b, 'i> QualifiedRuleParser<'i> for FontFaceRuleParser<'a, 'b> {
|
||||
type Prelude = ();
|
||||
type QualifiedRule = ();
|
||||
type Error = StyleParseErrorKind<'i>;
|
||||
}
|
||||
|
||||
fn font_tech_enabled() -> bool {
|
||||
#[cfg(feature = "gecko")]
|
||||
return static_prefs::pref!("layout.css.font-tech.enabled");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue