Trait style::values::distance::ComputeSquaredDistance
[−]
[src]
pub trait ComputeSquaredDistance {
fn compute_squared_distance(
&self,
other: &Self
) -> Result<SquaredDistance, ()>;
}A trait to compute squared distances between two animatable values.
This trait is derivable with #[derive(ComputeSquaredDistance)]. The derived
implementation uses a match expression with identical patterns for both
self and other, calling ComputeSquaredDistance::compute_squared_distance
on each fields of the values.
If a variant is annotated with #[animation(error)], the corresponding
match arm is not generated.
If the two values are not similar, an error is returned unless a fallback
function has been specified through #[distance(fallback)].
Required Methods
fn compute_squared_distance(&self, other: &Self) -> Result<SquaredDistance, ()>
Computes the squared distance between two animatable values.
Implementations on Foreign Types
impl ComputeSquaredDistance for u16[src]
fn compute_squared_distance(&self, other: &Self) -> Result<SquaredDistance, ()>[src]
impl ComputeSquaredDistance for i32[src]
fn compute_squared_distance(&self, other: &Self) -> Result<SquaredDistance, ()>[src]
impl ComputeSquaredDistance for f32[src]
fn compute_squared_distance(&self, other: &Self) -> Result<SquaredDistance, ()>[src]
impl ComputeSquaredDistance for f64[src]
fn compute_squared_distance(&self, other: &Self) -> Result<SquaredDistance, ()>[src]
impl<T> ComputeSquaredDistance for Option<T> where
T: ComputeSquaredDistance, [src]
T: ComputeSquaredDistance,
fn compute_squared_distance(&self, other: &Self) -> Result<SquaredDistance, ()>[src]
impl<T> ComputeSquaredDistance for Size2D<T> where
T: ComputeSquaredDistance, [src]
T: ComputeSquaredDistance,
fn compute_squared_distance(&self, other: &Self) -> Result<SquaredDistance, ()>[src]
impl<T> ComputeSquaredDistance for SmallVec<[T; 1]> where
T: ComputeSquaredDistance + RepeatableListAnimatable, [src]
T: ComputeSquaredDistance + RepeatableListAnimatable,
fn compute_squared_distance(&self, other: &Self) -> Result<SquaredDistance, ()>[src]
impl<T> ComputeSquaredDistance for Vec<T> where
T: ComputeSquaredDistance + RepeatableListAnimatable, [src]
T: ComputeSquaredDistance + RepeatableListAnimatable,
fn compute_squared_distance(&self, other: &Self) -> Result<SquaredDistance, ()>[src]
Implementors
impl ComputeSquaredDistance for RGBAimpl ComputeSquaredDistance for Colorimpl<S> ComputeSquaredDistance for ShadowList<S> where
S: ComputeSquaredDistance + ToAnimatedZero,impl ComputeSquaredDistance for BoxShadowimpl ComputeSquaredDistance for Angleimpl ComputeSquaredDistance for FontWeightimpl ComputeSquaredDistance for FontSizeimpl ComputeSquaredDistance for KeywordInfoimpl ComputeSquaredDistance for FontSizeAdjustimpl ComputeSquaredDistance for CalcLengthOrPercentageimpl ComputeSquaredDistance for LengthOrPercentageimpl ComputeSquaredDistance for LengthOrPercentageOrAutoimpl ComputeSquaredDistance for LengthOrPercentageOrNoneimpl ComputeSquaredDistance for CSSPixelLengthimpl ComputeSquaredDistance for MozLengthimpl ComputeSquaredDistance for MaxLengthimpl ComputeSquaredDistance for Percentageimpl ComputeSquaredDistance for NumberOrPercentageimpl ComputeSquaredDistance for ClipRectimpl ComputeSquaredDistance for Auimpl<LengthOrPercentageOrAuto> ComputeSquaredDistance for BackgroundSize<LengthOrPercentageOrAuto> where
LengthOrPercentageOrAuto: ComputeSquaredDistance,impl<H, V, LengthOrPercentage> ComputeSquaredDistance for BasicShape<H, V, LengthOrPercentage> where
InsetRect<LengthOrPercentage>: ComputeSquaredDistance,
Circle<H, V, LengthOrPercentage>: ComputeSquaredDistance,
Ellipse<H, V, LengthOrPercentage>: ComputeSquaredDistance,
Polygon<LengthOrPercentage>: ComputeSquaredDistance,impl<LengthOrPercentage> ComputeSquaredDistance for InsetRect<LengthOrPercentage> where
Rect<LengthOrPercentage>: ComputeSquaredDistance,
Option<BorderRadius<LengthOrPercentage>>: ComputeSquaredDistance,impl<H, V, LengthOrPercentage> ComputeSquaredDistance for Circle<H, V, LengthOrPercentage> where
Position<H, V>: ComputeSquaredDistance,
ShapeRadius<LengthOrPercentage>: ComputeSquaredDistance,impl<H, V, LengthOrPercentage> ComputeSquaredDistance for Ellipse<H, V, LengthOrPercentage> where
Position<H, V>: ComputeSquaredDistance,
ShapeRadius<LengthOrPercentage>: ComputeSquaredDistance,impl<LengthOrPercentage> ComputeSquaredDistance for ShapeRadius<LengthOrPercentage> where
LengthOrPercentage: ComputeSquaredDistance,impl<B, T, U> ComputeSquaredDistance for ShapeSource<B, T, U> where
B: ComputeSquaredDistance,
T: PartialEq,impl<L> ComputeSquaredDistance for Polygon<L> where
L: ComputeSquaredDistance,impl<L> ComputeSquaredDistance for BorderCornerRadius<L> where
Size<L>: ComputeSquaredDistance,impl<L> ComputeSquaredDistance for BorderSpacing<L> where
Size<L>: ComputeSquaredDistance,impl<LengthOrPercentage> ComputeSquaredDistance for BorderRadius<LengthOrPercentage> where
BorderCornerRadius<LengthOrPercentage>: ComputeSquaredDistance,impl<LengthOrPercentage> ComputeSquaredDistance for VerticalAlign<LengthOrPercentage> where
LengthOrPercentage: ComputeSquaredDistance,impl<Color, SizeLength, ShapeLength> ComputeSquaredDistance for SimpleShadow<Color, SizeLength, ShapeLength> where
Color: ComputeSquaredDistance,
SizeLength: ComputeSquaredDistance,
ShapeLength: ComputeSquaredDistance,impl<H, V> ComputeSquaredDistance for Position<H, V> where
H: ComputeSquaredDistance,
V: ComputeSquaredDistance,impl<T> ComputeSquaredDistance for Rect<T> where
T: ComputeSquaredDistance,impl<L> ComputeSquaredDistance for Size<L> where
Size2D<L>: ComputeSquaredDistance,impl<ColorType, UrlPaintServer> ComputeSquaredDistance for SVGPaint<ColorType, UrlPaintServer> where
SVGPaintKind<ColorType, UrlPaintServer>: ComputeSquaredDistance,
Option<Either<ColorType, None_>>: ComputeSquaredDistance,impl<ColorType, UrlPaintServer> ComputeSquaredDistance for SVGPaintKind<ColorType, UrlPaintServer> where
ColorType: ComputeSquaredDistance,impl<L, N> ComputeSquaredDistance for SvgLengthOrPercentageOrNumber<L, N> where
L: ComputeSquaredDistance + Copy + Into<NumberOrPercentage>,
N: ComputeSquaredDistance + Copy + Into<NumberOrPercentage>,impl<LengthType> ComputeSquaredDistance for SVGLength<LengthType> where
LengthType: ComputeSquaredDistance,impl<LengthType> ComputeSquaredDistance for SVGStrokeDashArray<LengthType> where
Vec<LengthType>: ComputeSquaredDistance,impl<OpacityType> ComputeSquaredDistance for SVGOpacity<OpacityType> where
OpacityType: ComputeSquaredDistance,impl<V> ComputeSquaredDistance for Spacing<V> where
V: ComputeSquaredDistance + From<Au>,impl<Number, LengthOrPercentage> ComputeSquaredDistance for LineHeight<Number, LengthOrPercentage> where
Number: ComputeSquaredDistance,
LengthOrPercentage: ComputeSquaredDistance,impl<H, V, Depth> ComputeSquaredDistance for TransformOrigin<H, V, Depth> where
H: ComputeSquaredDistance,
V: ComputeSquaredDistance,
Depth: ComputeSquaredDistance,impl<T> ComputeSquaredDistance for NonNegative<T> where
T: ComputeSquaredDistance,impl<T> ComputeSquaredDistance for GreaterThanOrEqualToOne<T> where
T: ComputeSquaredDistance,impl ComputeSquaredDistance for KeywordSizeimpl ComputeSquaredDistance for None_impl ComputeSquaredDistance for Autoimpl ComputeSquaredDistance for Normalimpl<A, B> ComputeSquaredDistance for Either<A, B> where
A: ComputeSquaredDistance,
B: ComputeSquaredDistance,impl ComputeSquaredDistance for style::properties::longhands::background_position_x::computed_value::Timpl ComputeSquaredDistance for style::properties::longhands::background_position_y::computed_value::Timpl ComputeSquaredDistance for style::properties::longhands::background_size::computed_value::Timpl ComputeSquaredDistance for AnimationValueimpl ComputeSquaredDistance for Visibilityimpl ComputeSquaredDistance for FontStretchimpl ComputeSquaredDistance for InnerMatrix2Dimpl ComputeSquaredDistance for Translate2Dimpl ComputeSquaredDistance for Scale2Dimpl ComputeSquaredDistance for MatrixDecomposed2Dimpl ComputeSquaredDistance for Matrix3Dimpl ComputeSquaredDistance for Translate3Dimpl ComputeSquaredDistance for Scale3Dimpl ComputeSquaredDistance for Perspectiveimpl ComputeSquaredDistance for MatrixDecomposed3Dimpl ComputeSquaredDistance for Quaternionimpl ComputeSquaredDistance for Skewimpl ComputeSquaredDistance for ComputedTransformOperationimpl ComputeSquaredDistance for ComputedTransformimpl ComputeSquaredDistance for AnimatedFilterimpl ComputeSquaredDistance for AnimatedFilterList