Use the LonghandIdSet to check whether a property is set

This commit is contained in:
Xidorn Quan 2017-09-12 08:45:30 +10:00
parent ac2fd024b5
commit d486def53b
2 changed files with 6 additions and 3 deletions

View file

@ -239,6 +239,11 @@ impl PropertyDeclarationBlock {
!self.declarations_importance.all_true()
}
/// Returns whether this block contains a declaration of a given longhand.
pub fn contains(&self, id: LonghandId) -> bool {
self.longhands.contains(id)
}
/// Get a declaration for a given property.
///
/// NOTE: This is linear time.

View file

@ -2566,10 +2566,8 @@ pub extern "C" fn Servo_DeclarationBlock_PropertyIsSet(declarations:
RawServoDeclarationBlockBorrowed,
property: nsCSSPropertyID)
-> bool {
use style::properties::PropertyDeclarationId;
let long = get_longhand_from_id!(property);
read_locked_arc(declarations, |decls: &PropertyDeclarationBlock| {
decls.get(PropertyDeclarationId::Longhand(long)).is_some()
decls.contains(get_longhand_from_id!(property))
})
}