diff --git a/components/style/gecko/data.rs b/components/style/gecko/data.rs index 09e9fc511e1..193ee928670 100644 --- a/components/style/gecko/data.rs +++ b/components/style/gecko/data.rs @@ -7,7 +7,6 @@ use Atom; use atomic_refcell::{AtomicRef, AtomicRefCell, AtomicRefMut}; use dom::TElement; -use fnv::FnvHashMap; use gecko::rules::{CounterStyleRule, FontFaceRule}; use gecko_bindings::bindings::{self, RawServoStyleSet}; use gecko_bindings::structs::{ServoStyleSheet, StyleSheetInfo, ServoStyleSheetInner}; @@ -17,6 +16,7 @@ use gecko_bindings::sugar::ownership::{HasArcFFI, HasBoxFFI, HasFFI, HasSimpleFF use invalidation::media_queries::{MediaListKey, ToMediaListKey}; use media_queries::{Device, MediaList}; use properties::ComputedValues; +use selector_map::PrecomputedHashMap; use servo_arc::Arc; use shared_lock::{Locked, StylesheetGuards, SharedRwLockReadGuard}; use stylesheet_set::StylesheetSet; @@ -124,7 +124,7 @@ pub struct PerDocumentStyleDataImpl { pub font_faces: Vec<(Arc>, Origin)>, /// Map for effective counter style rules. - pub counter_styles: FnvHashMap>>, + pub counter_styles: PrecomputedHashMap>>, } /// The data itself is an `AtomicRefCell`, which guarantees the proper semantics @@ -143,7 +143,7 @@ impl PerDocumentStyleData { stylist: Stylist::new(device, quirks_mode.into()), stylesheets: StylesheetSet::new(), font_faces: vec![], - counter_styles: FnvHashMap::default(), + counter_styles: PrecomputedHashMap::default(), })) } diff --git a/components/style/stylist.rs b/components/style/stylist.rs index 24435514471..b13fd7376cd 100644 --- a/components/style/stylist.rs +++ b/components/style/stylist.rs @@ -22,7 +22,7 @@ use properties::{AnimationRules, PropertyDeclarationBlock}; use properties::INHERIT_ALL; use properties::IS_LINK; use rule_tree::{CascadeLevel, RuleTree, StyleSource}; -use selector_map::{SelectorMap, SelectorMapEntry}; +use selector_map::{PrecomputedHashMap, SelectorMap, SelectorMapEntry}; use selector_parser::{SelectorImpl, PerPseudoElementMap, PseudoElement}; use selectors::attr::NamespaceConstraint; use selectors::bloom::BloomFilter; @@ -98,7 +98,7 @@ pub struct Stylist { rule_tree: RuleTree, /// A map with all the animations indexed by name. - animations: FnvHashMap, + animations: PrecomputedHashMap, /// Applicable declarations for a given non-eagerly cascaded pseudo-element. /// These are eagerly computed once, and then used to resolve the new @@ -168,7 +168,7 @@ pub struct ExtraStyleData<'a> { /// A list of effective font-face rules and their origin. pub font_faces: &'a mut Vec<(Arc>, Origin)>, /// A map of effective counter-style rules. - pub counter_styles: &'a mut FnvHashMap>>, + pub counter_styles: &'a mut PrecomputedHashMap>>, } #[cfg(feature = "gecko")] @@ -1329,7 +1329,7 @@ impl Stylist { /// Returns the map of registered `@keyframes` animations. #[inline] - pub fn animations(&self) -> &FnvHashMap { + pub fn animations(&self) -> &PrecomputedHashMap { &self.animations }