|
5 | 5 | #[cfg(feature = "num_traits")] |
6 | 6 | use num_traits::Zero; |
7 | 7 | #[cfg(feature = "serde_serialization")] |
8 | | -use serde::{Serialize, Deserialize, Deserializer}; |
| 8 | +use serde::{Deserialize, Deserializer, Serialize}; |
9 | 9 |
|
10 | | -use std::{fmt, i32, default::Default, ops::{Add, AddAssign, Div, DivAssign, Mul, MulAssign, Neg, Rem, Sub, SubAssign}}; |
11 | 10 | use std::iter::Sum; |
| 11 | +use std::{ |
| 12 | + default::Default, |
| 13 | + fmt, i32, |
| 14 | + ops::{Add, AddAssign, Div, DivAssign, Mul, MulAssign, Neg, Rem, Sub, SubAssign}, |
| 15 | +}; |
12 | 16 |
|
13 | 17 | /// The number of app units in a pixel. |
14 | 18 | pub const AU_PER_PX: i32 = 60; |
15 | 19 | /// The minimum number of app units, same as in Gecko. |
16 | | -pub const MIN_AU: Au = Au(- ((1 << 30) - 1)); |
| 20 | +pub const MIN_AU: Au = Au(-((1 << 30) - 1)); |
17 | 21 | /// The maximum number of app units, same as in Gecko. |
18 | | -/// |
| 22 | +/// |
19 | 23 | /// (1 << 30) - 1 lets us add/subtract two Au and check for overflow after the operation. |
20 | 24 | pub const MAX_AU: Au = Au((1 << 30) - 1); |
21 | 25 |
|
22 | | - |
23 | 26 | #[repr(transparent)] |
24 | 27 | #[derive(Clone, Copy, Hash, PartialEq, PartialOrd, Eq, Ord, Default)] |
25 | 28 | #[cfg_attr(feature = "serde_serialization", derive(Serialize), serde(transparent))] |
@@ -73,7 +76,6 @@ impl Sub for Au { |
73 | 76 | fn sub(self, other: Au) -> Au { |
74 | 77 | Au(self.0 - other.0).clamp() |
75 | 78 | } |
76 | | - |
77 | 79 | } |
78 | 80 |
|
79 | 81 | impl Mul<Au> for i32 { |
@@ -391,7 +393,7 @@ fn convert() { |
391 | 393 | assert_eq!(Au::from_f64_px(6.13), Au(368)); |
392 | 394 | } |
393 | 395 |
|
394 | | -#[cfg(feature ="serde_serialization")] |
| 396 | +#[cfg(feature = "serde_serialization")] |
395 | 397 | #[test] |
396 | 398 | fn serialize() { |
397 | 399 | let serialized = ron::to_string(&Au(42)).unwrap(); |
|
0 commit comments