style: Avoid hashing hashes.

These are the last instances I can find of us hashing the atoms hash.
This commit is contained in:
Emilio Cobos Álvarez 2017-08-08 12:55:57 +02:00
parent 32f835260c
commit de58c088b1
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C
2 changed files with 7 additions and 7 deletions

View file

@ -7,7 +7,6 @@
use Atom; use Atom;
use atomic_refcell::{AtomicRef, AtomicRefCell, AtomicRefMut}; use atomic_refcell::{AtomicRef, AtomicRefCell, AtomicRefMut};
use dom::TElement; use dom::TElement;
use fnv::FnvHashMap;
use gecko::rules::{CounterStyleRule, FontFaceRule}; use gecko::rules::{CounterStyleRule, FontFaceRule};
use gecko_bindings::bindings::{self, RawServoStyleSet}; use gecko_bindings::bindings::{self, RawServoStyleSet};
use gecko_bindings::structs::{ServoStyleSheet, StyleSheetInfo, ServoStyleSheetInner}; 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 invalidation::media_queries::{MediaListKey, ToMediaListKey};
use media_queries::{Device, MediaList}; use media_queries::{Device, MediaList};
use properties::ComputedValues; use properties::ComputedValues;
use selector_map::PrecomputedHashMap;
use servo_arc::Arc; use servo_arc::Arc;
use shared_lock::{Locked, StylesheetGuards, SharedRwLockReadGuard}; use shared_lock::{Locked, StylesheetGuards, SharedRwLockReadGuard};
use stylesheet_set::StylesheetSet; use stylesheet_set::StylesheetSet;
@ -124,7 +124,7 @@ pub struct PerDocumentStyleDataImpl {
pub font_faces: Vec<(Arc<Locked<FontFaceRule>>, Origin)>, pub font_faces: Vec<(Arc<Locked<FontFaceRule>>, Origin)>,
/// Map for effective counter style rules. /// Map for effective counter style rules.
pub counter_styles: FnvHashMap<Atom, Arc<Locked<CounterStyleRule>>>, pub counter_styles: PrecomputedHashMap<Atom, Arc<Locked<CounterStyleRule>>>,
} }
/// The data itself is an `AtomicRefCell`, which guarantees the proper semantics /// The data itself is an `AtomicRefCell`, which guarantees the proper semantics
@ -143,7 +143,7 @@ impl PerDocumentStyleData {
stylist: Stylist::new(device, quirks_mode.into()), stylist: Stylist::new(device, quirks_mode.into()),
stylesheets: StylesheetSet::new(), stylesheets: StylesheetSet::new(),
font_faces: vec![], font_faces: vec![],
counter_styles: FnvHashMap::default(), counter_styles: PrecomputedHashMap::default(),
})) }))
} }

View file

@ -22,7 +22,7 @@ use properties::{AnimationRules, PropertyDeclarationBlock};
use properties::INHERIT_ALL; use properties::INHERIT_ALL;
use properties::IS_LINK; use properties::IS_LINK;
use rule_tree::{CascadeLevel, RuleTree, StyleSource}; use rule_tree::{CascadeLevel, RuleTree, StyleSource};
use selector_map::{SelectorMap, SelectorMapEntry}; use selector_map::{PrecomputedHashMap, SelectorMap, SelectorMapEntry};
use selector_parser::{SelectorImpl, PerPseudoElementMap, PseudoElement}; use selector_parser::{SelectorImpl, PerPseudoElementMap, PseudoElement};
use selectors::attr::NamespaceConstraint; use selectors::attr::NamespaceConstraint;
use selectors::bloom::BloomFilter; use selectors::bloom::BloomFilter;
@ -98,7 +98,7 @@ pub struct Stylist {
rule_tree: RuleTree, rule_tree: RuleTree,
/// A map with all the animations indexed by name. /// A map with all the animations indexed by name.
animations: FnvHashMap<Atom, KeyframesAnimation>, animations: PrecomputedHashMap<Atom, KeyframesAnimation>,
/// Applicable declarations for a given non-eagerly cascaded pseudo-element. /// Applicable declarations for a given non-eagerly cascaded pseudo-element.
/// These are eagerly computed once, and then used to resolve the new /// 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. /// A list of effective font-face rules and their origin.
pub font_faces: &'a mut Vec<(Arc<Locked<FontFaceRule>>, Origin)>, pub font_faces: &'a mut Vec<(Arc<Locked<FontFaceRule>>, Origin)>,
/// A map of effective counter-style rules. /// A map of effective counter-style rules.
pub counter_styles: &'a mut FnvHashMap<Atom, Arc<Locked<CounterStyleRule>>>, pub counter_styles: &'a mut PrecomputedHashMap<Atom, Arc<Locked<CounterStyleRule>>>,
} }
#[cfg(feature = "gecko")] #[cfg(feature = "gecko")]
@ -1329,7 +1329,7 @@ impl Stylist {
/// Returns the map of registered `@keyframes` animations. /// Returns the map of registered `@keyframes` animations.
#[inline] #[inline]
pub fn animations(&self) -> &FnvHashMap<Atom, KeyframesAnimation> { pub fn animations(&self) -> &PrecomputedHashMap<Atom, KeyframesAnimation> {
&self.animations &self.animations
} }