mirror of
https://github.com/servo/servo.git
synced 2025-08-05 21:50:18 +01:00
Bug 1374233 - Part 1: Add NonNegativeNumber and GreaterThanOrEqualToOneNumber.
NonNegativeNumber: for -moz-box-flex, flex-grow, and flex-shrink. GreaterThanOrEqualToOneNumber: for stroke-miterlimit. MozReview-Commit-ID: Kgbt99BPdVA
This commit is contained in:
parent
50c9797ddd
commit
4cc97746f2
12 changed files with 181 additions and 26 deletions
|
@ -18,6 +18,7 @@ use std::f64::consts::PI;
|
|||
use std::fmt;
|
||||
use style_traits::ToCss;
|
||||
use super::{CSSFloat, CSSInteger};
|
||||
use super::generics::{GreaterThanOrEqualToOne, NonNegative};
|
||||
use super::generics::grid::{TrackBreadth as GenericTrackBreadth, TrackSize as GenericTrackSize};
|
||||
use super::generics::grid::GridTemplateComponent as GenericGridTemplateComponent;
|
||||
use super::generics::grid::TrackList as GenericTrackList;
|
||||
|
@ -425,6 +426,40 @@ impl ComputedValueAsSpecified for specified::BorderStyle {}
|
|||
/// A `<number>` value.
|
||||
pub type Number = CSSFloat;
|
||||
|
||||
/// A wrapper of Number, but the value >= 0.
|
||||
pub type NonNegativeNumber = NonNegative<CSSFloat>;
|
||||
|
||||
impl From<CSSFloat> for NonNegativeNumber {
|
||||
#[inline]
|
||||
fn from(number: CSSFloat) -> NonNegativeNumber {
|
||||
NonNegative::<CSSFloat>(number)
|
||||
}
|
||||
}
|
||||
|
||||
impl From<NonNegativeNumber> for CSSFloat {
|
||||
#[inline]
|
||||
fn from(number: NonNegativeNumber) -> CSSFloat {
|
||||
number.0
|
||||
}
|
||||
}
|
||||
|
||||
/// A wrapper of Number, but the value >= 1.
|
||||
pub type GreaterThanOrEqualToOneNumber = GreaterThanOrEqualToOne<CSSFloat>;
|
||||
|
||||
impl From<CSSFloat> for GreaterThanOrEqualToOneNumber {
|
||||
#[inline]
|
||||
fn from(number: CSSFloat) -> GreaterThanOrEqualToOneNumber {
|
||||
GreaterThanOrEqualToOne::<CSSFloat>(number)
|
||||
}
|
||||
}
|
||||
|
||||
impl From<GreaterThanOrEqualToOneNumber> for CSSFloat {
|
||||
#[inline]
|
||||
fn from(number: GreaterThanOrEqualToOneNumber) -> CSSFloat {
|
||||
number.0
|
||||
}
|
||||
}
|
||||
|
||||
#[allow(missing_docs)]
|
||||
#[cfg_attr(feature = "servo", derive(HeapSizeOf))]
|
||||
#[derive(Clone, Copy, Debug, PartialEq, ToCss)]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue