aboutsummaryrefslogtreecommitdiffstats
path: root/components/style/values/computed/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/style/values/computed/mod.rs')
-rw-r--r--components/style/values/computed/mod.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/components/style/values/computed/mod.rs b/components/style/values/computed/mod.rs
index 49b3f2e7285..9864cd67983 100644
--- a/components/style/values/computed/mod.rs
+++ b/components/style/values/computed/mod.rs
@@ -4,6 +4,7 @@
use app_units::Au;
use euclid::size::Size2D;
+use ordered_float::NotNaN;
use properties::ComputedValues;
use std::fmt;
use super::LocalToCss;
@@ -241,6 +242,15 @@ impl LengthOrPercentage {
Length(_) | Percentage(_) | Calc(_) => false
}
}
+
+ pub fn to_hash_key(&self) -> (Au, NotNaN<f32>) {
+ use self::LengthOrPercentage::*;
+ match *self {
+ Length(l) => (l, NotNaN::new(0.0).unwrap()),
+ Percentage(p) => (Au(0), NotNaN::new(p).unwrap()),
+ Calc(c) => (c.length(), NotNaN::new(c.percentage()).unwrap()),
+ }
+ }
}
impl fmt::Debug for LengthOrPercentage {