pub enum Evaluator {
Length(fn(device: &Context<'_>) -> CSSPixelLength),
OptionalLength(fn(device: &Context<'_>) -> Option<CSSPixelLength>),
Integer(fn(device: &Context<'_>) -> i32),
Float(fn(device: &Context<'_>) -> f32),
BoolInteger(fn(device: &Context<'_>) -> bool),
NumberRatio(fn(device: &Context<'_>) -> Ratio),
OptionalNumberRatio(fn(device: &Context<'_>) -> Option<Ratio>),
Resolution(fn(device: &Context<'_>) -> Resolution),
String(fn(_: &Context<'_>, _: Option<&AtomString>) -> KleeneValue),
Enumerated {
parser: KeywordParser,
serializer: KeywordSerializer,
evaluator: fn(_: &Context<'_>, _: Option<KeywordDiscriminant>) -> KleeneValue,
},
}
Expand description
An evaluator for a given feature.
This determines the kind of values that get parsed, too.
Variants§
Length(fn(device: &Context<'_>) -> CSSPixelLength)
OptionalLength(fn(device: &Context<'_>) -> Option<CSSPixelLength>)
Integer(fn(device: &Context<'_>) -> i32)
Float(fn(device: &Context<'_>) -> f32)
BoolInteger(fn(device: &Context<'_>) -> bool)
NumberRatio(fn(device: &Context<'_>) -> Ratio)
A non-negative number ratio, such as the one from device-pixel-ratio.
OptionalNumberRatio(fn(device: &Context<'_>) -> Option<Ratio>)
Resolution(fn(device: &Context<'_>) -> Resolution)
A resolution.
String(fn(_: &Context<'_>, _: Option<&AtomString>) -> KleeneValue)
Enumerated
A keyword value.
Fields
§
parser: KeywordParser
The parser to get a discriminant given a string.
§
serializer: KeywordSerializer
The serializer to get a string from a discriminant.
This is guaranteed to be called with a keyword that parser
has
produced.
§
evaluator: fn(_: &Context<'_>, _: Option<KeywordDiscriminant>) -> KleeneValue
The evaluator itself. This is guaranteed to be called with a
keyword that parser
has produced.
Auto Trait Implementations§
impl Freeze for Evaluator
impl RefUnwindSafe for Evaluator
impl Send for Evaluator
impl Sync for Evaluator
impl Unpin for Evaluator
impl UnwindSafe for Evaluator
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert