1macro_rules! impl_pixel_value {
10 ($struct:ident) => {
11 impl $struct {
12 #[inline]
13 #[must_use]
14 pub const fn zero() -> Self {
15 Self {
16 inner: crate::props::basic::pixel::PixelValue::zero(),
17 }
18 }
19
20 #[inline]
21 #[must_use]
22 pub const fn const_px(value: isize) -> Self {
23 Self {
24 inner: crate::props::basic::pixel::PixelValue::const_px(value),
25 }
26 }
27
28 #[inline]
29 #[must_use]
30 pub const fn const_em(value: isize) -> Self {
31 Self {
32 inner: crate::props::basic::pixel::PixelValue::const_em(value),
33 }
34 }
35
36 #[inline]
37 #[must_use]
38 pub const fn const_pt(value: isize) -> Self {
39 Self {
40 inner: crate::props::basic::pixel::PixelValue::const_pt(value),
41 }
42 }
43
44 #[inline]
45 #[must_use]
46 pub const fn const_percent(value: isize) -> Self {
47 Self {
48 inner: crate::props::basic::pixel::PixelValue::const_percent(value),
49 }
50 }
51
52 #[inline]
53 #[must_use]
54 pub const fn const_in(value: isize) -> Self {
55 Self {
56 inner: crate::props::basic::pixel::PixelValue::const_in(value),
57 }
58 }
59
60 #[inline]
61 #[must_use]
62 pub const fn const_cm(value: isize) -> Self {
63 Self {
64 inner: crate::props::basic::pixel::PixelValue::const_cm(value),
65 }
66 }
67
68 #[inline]
69 #[must_use]
70 pub const fn const_mm(value: isize) -> Self {
71 Self {
72 inner: crate::props::basic::pixel::PixelValue::const_mm(value),
73 }
74 }
75
76 #[inline]
77 #[must_use]
78 pub const fn const_from_metric(
79 metric: crate::props::basic::length::SizeMetric,
80 value: isize,
81 ) -> Self {
82 Self {
83 inner: crate::props::basic::pixel::PixelValue::const_from_metric(metric, value),
84 }
85 }
86
87 #[inline]
88 #[must_use]
89 pub fn px(value: f32) -> Self {
90 Self {
91 inner: crate::props::basic::pixel::PixelValue::px(value),
92 }
93 }
94
95 #[inline]
96 #[must_use]
97 pub fn em(value: f32) -> Self {
98 Self {
99 inner: crate::props::basic::pixel::PixelValue::em(value),
100 }
101 }
102
103 #[inline]
104 #[must_use]
105 pub fn pt(value: f32) -> Self {
106 Self {
107 inner: crate::props::basic::pixel::PixelValue::pt(value),
108 }
109 }
110
111 #[inline]
112 #[must_use]
113 pub fn percent(value: f32) -> Self {
114 Self {
115 inner: crate::props::basic::pixel::PixelValue::percent(value),
116 }
117 }
118
119 #[inline]
120 #[must_use]
121 pub fn from_metric(
122 metric: crate::props::basic::length::SizeMetric,
123 value: f32,
124 ) -> Self {
125 Self {
126 inner: crate::props::basic::pixel::PixelValue::from_metric(metric, value),
127 }
128 }
129
130 #[inline]
131 #[must_use]
132 pub fn interpolate(&self, other: &Self, t: f32) -> Self {
133 $struct {
134 inner: self.inner.interpolate(&other.inner, t),
135 }
136 }
137 }
138 };
139}
140
141macro_rules! impl_percentage_value {
142 ($struct:ident) => {
143 impl ::core::fmt::Display for $struct {
144 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
145 write!(f, "{}%", self.inner.normalized() * 100.0)
146 }
147 }
148
149 impl ::core::fmt::Debug for $struct {
150 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
151 write!(f, "{}%", self.inner.normalized() * 100.0)
152 }
153 }
154
155 impl $struct {
156 #[inline]
159 #[must_use]
160 pub const fn const_new(value: isize) -> Self {
161 Self {
162 inner: PercentageValue::const_new(value),
163 }
164 }
165
166 #[inline]
167 #[must_use]
168 pub fn new(value: f32) -> Self {
169 Self {
170 inner: PercentageValue::new(value),
171 }
172 }
173
174 #[inline]
175 #[must_use]
176 pub fn interpolate(&self, other: &Self, t: f32) -> Self {
177 $struct {
178 inner: self.inner.interpolate(&other.inner, t),
179 }
180 }
181 }
182 };
183}
184
185pub trait PixelValueTaker {
187 fn from_pixel_value(inner: crate::props::basic::pixel::PixelValue) -> Self;
188}
189
190macro_rules! css_property_from_type {
191 ($prop_type:expr, $content_type:ident) => {{
192 match $prop_type {
193 CssPropertyType::CaretColor => CssProperty::CaretColor(CssPropertyValue::$content_type),
194 CssPropertyType::CaretWidth => CssProperty::CaretWidth(CssPropertyValue::$content_type),
195 CssPropertyType::CaretAnimationDuration => {
196 CssProperty::CaretAnimationDuration(CssPropertyValue::$content_type)
197 }
198 CssPropertyType::Animation => CssProperty::Animation(CssPropertyValue::$content_type),
199 CssPropertyType::AnimationIn => {
200 CssProperty::AnimationIn(CssPropertyValue::$content_type)
201 }
202 CssPropertyType::AnimationOut => {
203 CssProperty::AnimationOut(CssPropertyValue::$content_type)
204 }
205 CssPropertyType::SelectionBackgroundColor => {
206 CssProperty::SelectionBackgroundColor(CssPropertyValue::$content_type)
207 }
208 CssPropertyType::SelectionColor => {
209 CssProperty::SelectionColor(CssPropertyValue::$content_type)
210 }
211 CssPropertyType::SelectionRadius => {
212 CssProperty::SelectionRadius(CssPropertyValue::$content_type)
213 }
214
215 CssPropertyType::TextColor => CssProperty::TextColor(CssPropertyValue::$content_type),
216 CssPropertyType::FontSize => CssProperty::FontSize(CssPropertyValue::$content_type),
217 CssPropertyType::FontFamily => CssProperty::FontFamily(CssPropertyValue::$content_type),
218 CssPropertyType::TextAlign => CssProperty::TextAlign(CssPropertyValue::$content_type),
219 CssPropertyType::VerticalAlign => {
220 CssProperty::VerticalAlign(CssPropertyValue::$content_type)
221 }
222 CssPropertyType::LetterSpacing => {
223 CssProperty::LetterSpacing(CssPropertyValue::$content_type)
224 }
225 CssPropertyType::TextIndent => CssProperty::TextIndent(CssPropertyValue::$content_type),
226 CssPropertyType::InitialLetter => {
227 CssProperty::InitialLetter(CssPropertyValue::$content_type)
228 }
229 CssPropertyType::LineClamp => CssProperty::LineClamp(CssPropertyValue::$content_type),
230 CssPropertyType::HangingPunctuation => {
231 CssProperty::HangingPunctuation(CssPropertyValue::$content_type)
232 }
233 CssPropertyType::TextCombineUpright => {
234 CssProperty::TextCombineUpright(CssPropertyValue::$content_type)
235 }
236 CssPropertyType::ExclusionMargin => {
237 CssProperty::ExclusionMargin(CssPropertyValue::$content_type)
238 }
239 CssPropertyType::HyphenationLanguage => {
240 CssProperty::HyphenationLanguage(CssPropertyValue::$content_type)
241 }
242 CssPropertyType::LineHeight => CssProperty::LineHeight(CssPropertyValue::$content_type),
243 CssPropertyType::WordSpacing => {
244 CssProperty::WordSpacing(CssPropertyValue::$content_type)
245 }
246 CssPropertyType::TabSize => CssProperty::TabSize(CssPropertyValue::$content_type),
247 CssPropertyType::Cursor => CssProperty::Cursor(CssPropertyValue::$content_type),
248 CssPropertyType::Display => CssProperty::Display(CssPropertyValue::$content_type),
249 CssPropertyType::Float => CssProperty::Float(CssPropertyValue::$content_type),
250 CssPropertyType::BoxSizing => CssProperty::BoxSizing(CssPropertyValue::$content_type),
251 CssPropertyType::Width => CssProperty::Width(CssPropertyValue::$content_type),
252 CssPropertyType::Height => CssProperty::Height(CssPropertyValue::$content_type),
253 CssPropertyType::MinWidth => CssProperty::MinWidth(CssPropertyValue::$content_type),
254 CssPropertyType::MinHeight => CssProperty::MinHeight(CssPropertyValue::$content_type),
255 CssPropertyType::MaxWidth => CssProperty::MaxWidth(CssPropertyValue::$content_type),
256 CssPropertyType::MaxHeight => CssProperty::MaxHeight(CssPropertyValue::$content_type),
257 CssPropertyType::Position => CssProperty::Position(CssPropertyValue::$content_type),
258 CssPropertyType::Top => CssProperty::Top(CssPropertyValue::$content_type),
259 CssPropertyType::Right => CssProperty::Right(CssPropertyValue::$content_type),
260 CssPropertyType::Left => CssProperty::Left(CssPropertyValue::$content_type),
261 CssPropertyType::Bottom => CssProperty::Bottom(CssPropertyValue::$content_type),
262 CssPropertyType::ZIndex => CssProperty::ZIndex(CssPropertyValue::$content_type),
263 CssPropertyType::FlexWrap => CssProperty::FlexWrap(CssPropertyValue::$content_type),
264 CssPropertyType::FlexDirection => {
265 CssProperty::FlexDirection(CssPropertyValue::$content_type)
266 }
267 CssPropertyType::FlexGrow => CssProperty::FlexGrow(CssPropertyValue::$content_type),
268 CssPropertyType::FlexShrink => CssProperty::FlexShrink(CssPropertyValue::$content_type),
269 CssPropertyType::FlexBasis => CssProperty::FlexBasis(CssPropertyValue::$content_type),
270 CssPropertyType::JustifyContent => {
271 CssProperty::JustifyContent(CssPropertyValue::$content_type)
272 }
273 CssPropertyType::AlignItems => CssProperty::AlignItems(CssPropertyValue::$content_type),
274 CssPropertyType::AlignContent => {
275 CssProperty::AlignContent(CssPropertyValue::$content_type)
276 }
277 CssPropertyType::ColumnGap => CssProperty::ColumnGap(CssPropertyValue::$content_type),
278 CssPropertyType::RowGap => CssProperty::RowGap(CssPropertyValue::$content_type),
279 CssPropertyType::GridTemplateColumns => {
280 CssProperty::GridTemplateColumns(CssPropertyValue::$content_type)
281 }
282 CssPropertyType::GridTemplateRows => {
283 CssProperty::GridTemplateRows(CssPropertyValue::$content_type)
284 }
285 CssPropertyType::GridAutoColumns => {
286 CssProperty::GridAutoColumns(CssPropertyValue::$content_type)
287 }
288 CssPropertyType::GridAutoFlow => {
289 CssProperty::GridAutoFlow(CssPropertyValue::$content_type)
290 }
291 CssPropertyType::JustifySelf => {
292 CssProperty::JustifySelf(CssPropertyValue::$content_type)
293 }
294 CssPropertyType::JustifyItems => {
295 CssProperty::JustifyItems(CssPropertyValue::$content_type)
296 }
297 CssPropertyType::Gap => CssProperty::Gap(CssPropertyValue::$content_type),
298 CssPropertyType::GridGap => CssProperty::GridGap(CssPropertyValue::$content_type),
299 CssPropertyType::AlignSelf => CssProperty::AlignSelf(CssPropertyValue::$content_type),
300 CssPropertyType::Font => CssProperty::Font(CssPropertyValue::$content_type),
301 CssPropertyType::GridAutoRows => {
302 CssProperty::GridAutoRows(CssPropertyValue::$content_type)
303 }
304 CssPropertyType::GridColumn => CssProperty::GridColumn(CssPropertyValue::$content_type),
305 CssPropertyType::GridRow => CssProperty::GridRow(CssPropertyValue::$content_type),
306 CssPropertyType::GridTemplateAreas => {
307 CssProperty::GridTemplateAreas(CssPropertyValue::$content_type)
308 }
309 CssPropertyType::WritingMode => {
310 CssProperty::WritingMode(CssPropertyValue::$content_type)
311 }
312 CssPropertyType::Clear => CssProperty::Clear(CssPropertyValue::$content_type),
313 CssPropertyType::OverflowX => CssProperty::OverflowX(CssPropertyValue::$content_type),
314 CssPropertyType::OverflowY => CssProperty::OverflowY(CssPropertyValue::$content_type),
315 CssPropertyType::OverflowBlock => {
316 CssProperty::OverflowBlock(CssPropertyValue::$content_type)
317 }
318 CssPropertyType::OverflowInline => {
319 CssProperty::OverflowInline(CssPropertyValue::$content_type)
320 }
321 CssPropertyType::PaddingTop => CssProperty::PaddingTop(CssPropertyValue::$content_type),
322 CssPropertyType::PaddingLeft => {
323 CssProperty::PaddingLeft(CssPropertyValue::$content_type)
324 }
325 CssPropertyType::PaddingRight => {
326 CssProperty::PaddingRight(CssPropertyValue::$content_type)
327 }
328 CssPropertyType::PaddingBottom => {
329 CssProperty::PaddingBottom(CssPropertyValue::$content_type)
330 }
331 CssPropertyType::PaddingInlineStart => {
332 CssProperty::PaddingInlineStart(CssPropertyValue::$content_type)
333 }
334 CssPropertyType::PaddingInlineEnd => {
335 CssProperty::PaddingInlineEnd(CssPropertyValue::$content_type)
336 }
337 CssPropertyType::MarginTop => CssProperty::MarginTop(CssPropertyValue::$content_type),
338 CssPropertyType::MarginLeft => CssProperty::MarginLeft(CssPropertyValue::$content_type),
339 CssPropertyType::MarginRight => {
340 CssProperty::MarginRight(CssPropertyValue::$content_type)
341 }
342 CssPropertyType::MarginBottom => {
343 CssProperty::MarginBottom(CssPropertyValue::$content_type)
344 }
345 CssPropertyType::BackgroundContent => {
346 CssProperty::BackgroundContent(CssPropertyValue::$content_type)
347 }
348 CssPropertyType::BackgroundPosition => {
349 CssProperty::BackgroundPosition(CssPropertyValue::$content_type)
350 }
351 CssPropertyType::BackgroundSize => {
352 CssProperty::BackgroundSize(CssPropertyValue::$content_type)
353 }
354 CssPropertyType::BackgroundRepeat => {
355 CssProperty::BackgroundRepeat(CssPropertyValue::$content_type)
356 }
357 CssPropertyType::BorderTopLeftRadius => {
358 CssProperty::BorderTopLeftRadius(CssPropertyValue::$content_type)
359 }
360 CssPropertyType::BorderTopRightRadius => {
361 CssProperty::BorderTopRightRadius(CssPropertyValue::$content_type)
362 }
363 CssPropertyType::BorderBottomLeftRadius => {
364 CssProperty::BorderBottomLeftRadius(CssPropertyValue::$content_type)
365 }
366 CssPropertyType::BorderBottomRightRadius => {
367 CssProperty::BorderBottomRightRadius(CssPropertyValue::$content_type)
368 }
369 CssPropertyType::BorderTopColor => {
370 CssProperty::BorderTopColor(CssPropertyValue::$content_type)
371 }
372 CssPropertyType::BorderRightColor => {
373 CssProperty::BorderRightColor(CssPropertyValue::$content_type)
374 }
375 CssPropertyType::BorderLeftColor => {
376 CssProperty::BorderLeftColor(CssPropertyValue::$content_type)
377 }
378 CssPropertyType::BorderBottomColor => {
379 CssProperty::BorderBottomColor(CssPropertyValue::$content_type)
380 }
381 CssPropertyType::BorderTopStyle => {
382 CssProperty::BorderTopStyle(CssPropertyValue::$content_type)
383 }
384 CssPropertyType::BorderRightStyle => {
385 CssProperty::BorderRightStyle(CssPropertyValue::$content_type)
386 }
387 CssPropertyType::BorderLeftStyle => {
388 CssProperty::BorderLeftStyle(CssPropertyValue::$content_type)
389 }
390 CssPropertyType::BorderBottomStyle => {
391 CssProperty::BorderBottomStyle(CssPropertyValue::$content_type)
392 }
393 CssPropertyType::BorderTopWidth => {
394 CssProperty::BorderTopWidth(CssPropertyValue::$content_type)
395 }
396 CssPropertyType::BorderRightWidth => {
397 CssProperty::BorderRightWidth(CssPropertyValue::$content_type)
398 }
399 CssPropertyType::BorderLeftWidth => {
400 CssProperty::BorderLeftWidth(CssPropertyValue::$content_type)
401 }
402 CssPropertyType::BorderBottomWidth => {
403 CssProperty::BorderBottomWidth(CssPropertyValue::$content_type)
404 }
405 CssPropertyType::BoxShadowLeft => {
406 CssProperty::BoxShadowLeft(CssPropertyValue::$content_type)
407 }
408 CssPropertyType::BoxShadowRight => {
409 CssProperty::BoxShadowRight(CssPropertyValue::$content_type)
410 }
411 CssPropertyType::BoxShadowTop => {
412 CssProperty::BoxShadowTop(CssPropertyValue::$content_type)
413 }
414 CssPropertyType::BoxShadowBottom => {
415 CssProperty::BoxShadowBottom(CssPropertyValue::$content_type)
416 }
417 CssPropertyType::ScrollbarTrack => {
418 CssProperty::ScrollbarTrack(CssPropertyValue::$content_type)
419 }
420 CssPropertyType::ScrollbarThumb => {
421 CssProperty::ScrollbarThumb(CssPropertyValue::$content_type)
422 }
423 CssPropertyType::ScrollbarButton => {
424 CssProperty::ScrollbarButton(CssPropertyValue::$content_type)
425 }
426 CssPropertyType::ScrollbarCorner => {
427 CssProperty::ScrollbarCorner(CssPropertyValue::$content_type)
428 }
429 CssPropertyType::ScrollbarResizer => {
430 CssProperty::ScrollbarResizer(CssPropertyValue::$content_type)
431 }
432 CssPropertyType::ScrollbarWidth => {
433 CssProperty::ScrollbarWidth(CssPropertyValue::$content_type)
434 }
435 CssPropertyType::OverscrollBehaviorX => {
436 CssProperty::OverscrollBehaviorX(CssPropertyValue::$content_type)
437 }
438 CssPropertyType::OverscrollBehaviorY => {
439 CssProperty::OverscrollBehaviorY(CssPropertyValue::$content_type)
440 }
441 CssPropertyType::ScrollbarColor => {
442 CssProperty::ScrollbarColor(CssPropertyValue::$content_type)
443 }
444 CssPropertyType::ScrollbarVisibility => {
445 CssProperty::ScrollbarVisibility(CssPropertyValue::$content_type)
446 }
447 CssPropertyType::ScrollbarFadeDelay => {
448 CssProperty::ScrollbarFadeDelay(CssPropertyValue::$content_type)
449 }
450 CssPropertyType::ScrollbarFadeDuration => {
451 CssProperty::ScrollbarFadeDuration(CssPropertyValue::$content_type)
452 }
453 CssPropertyType::Opacity => CssProperty::Opacity(CssPropertyValue::$content_type),
454 CssPropertyType::Visibility => CssProperty::Visibility(CssPropertyValue::$content_type),
455 CssPropertyType::Transform => CssProperty::Transform(CssPropertyValue::$content_type),
456 CssPropertyType::PerspectiveOrigin => {
457 CssProperty::PerspectiveOrigin(CssPropertyValue::$content_type)
458 }
459 CssPropertyType::TransformOrigin => {
460 CssProperty::TransformOrigin(CssPropertyValue::$content_type)
461 }
462 CssPropertyType::AppRegion => CssProperty::AppRegion(CssPropertyValue::$content_type),
463 CssPropertyType::SpatialNavigationAction => {
464 CssProperty::SpatialNavigationAction(CssPropertyValue::$content_type)
465 }
466 CssPropertyType::SpatialNavigationContain => {
467 CssProperty::SpatialNavigationContain(CssPropertyValue::$content_type)
468 }
469 CssPropertyType::BackfaceVisibility => {
470 CssProperty::BackfaceVisibility(CssPropertyValue::$content_type)
471 }
472 CssPropertyType::MixBlendMode => {
473 CssProperty::MixBlendMode(CssPropertyValue::$content_type)
474 }
475 CssPropertyType::Filter => CssProperty::Filter(CssPropertyValue::$content_type),
476 CssPropertyType::BackdropFilter => {
477 CssProperty::BackdropFilter(CssPropertyValue::$content_type)
478 }
479 CssPropertyType::TextShadow => CssProperty::TextShadow(CssPropertyValue::$content_type),
480 CssPropertyType::Direction => CssProperty::Direction(CssPropertyValue::$content_type),
481 CssPropertyType::Hyphens => CssProperty::Hyphens(CssPropertyValue::$content_type),
482 CssPropertyType::WordBreak => CssProperty::WordBreak(CssPropertyValue::$content_type),
483 CssPropertyType::OverflowWrap => {
484 CssProperty::OverflowWrap(CssPropertyValue::$content_type)
485 }
486 CssPropertyType::LineBreak => CssProperty::LineBreak(CssPropertyValue::$content_type),
487 CssPropertyType::TextOverflow => {
488 CssProperty::TextOverflow(CssPropertyValue::$content_type)
489 }
490 CssPropertyType::ObjectFit => CssProperty::ObjectFit(CssPropertyValue::$content_type),
491 CssPropertyType::ObjectPosition => {
492 CssProperty::ObjectPosition(CssPropertyValue::$content_type)
493 }
494 CssPropertyType::AspectRatio => {
495 CssProperty::AspectRatio(CssPropertyValue::$content_type)
496 }
497 CssPropertyType::TextOrientation => {
498 CssProperty::TextOrientation(CssPropertyValue::$content_type)
499 }
500 CssPropertyType::TextAlignLast => {
501 CssProperty::TextAlignLast(CssPropertyValue::$content_type)
502 }
503 CssPropertyType::TextTransform => {
504 CssProperty::TextTransform(CssPropertyValue::$content_type)
505 }
506 CssPropertyType::WhiteSpace => CssProperty::WhiteSpace(CssPropertyValue::$content_type),
507 CssPropertyType::UserSelect => CssProperty::UserSelect(CssPropertyValue::$content_type),
508 CssPropertyType::TextDecoration => {
509 CssProperty::TextDecoration(CssPropertyValue::$content_type)
510 }
511 CssPropertyType::TextJustify => {
513 CssProperty::TextJustify(CssPropertyValue::$content_type)
514 }
515 CssPropertyType::BreakBefore => {
516 CssProperty::BreakBefore(CssPropertyValue::$content_type)
517 }
518 CssPropertyType::BreakAfter => CssProperty::BreakAfter(CssPropertyValue::$content_type),
519 CssPropertyType::BreakInside => {
520 CssProperty::BreakInside(CssPropertyValue::$content_type)
521 }
522 CssPropertyType::Widows => CssProperty::Widows(CssPropertyValue::$content_type),
523 CssPropertyType::Orphans => CssProperty::Orphans(CssPropertyValue::$content_type),
524 CssPropertyType::BoxDecorationBreak => {
525 CssProperty::BoxDecorationBreak(CssPropertyValue::$content_type)
526 }
527 CssPropertyType::ColumnCount => {
528 CssProperty::ColumnCount(CssPropertyValue::$content_type)
529 }
530 CssPropertyType::ColumnWidth => {
531 CssProperty::ColumnWidth(CssPropertyValue::$content_type)
532 }
533 CssPropertyType::ColumnSpan => CssProperty::ColumnSpan(CssPropertyValue::$content_type),
534 CssPropertyType::ColumnFill => CssProperty::ColumnFill(CssPropertyValue::$content_type),
535 CssPropertyType::ColumnRuleWidth => {
536 CssProperty::ColumnRuleWidth(CssPropertyValue::$content_type)
537 }
538 CssPropertyType::ColumnRuleStyle => {
539 CssProperty::ColumnRuleStyle(CssPropertyValue::$content_type)
540 }
541 CssPropertyType::ColumnRuleColor => {
542 CssProperty::ColumnRuleColor(CssPropertyValue::$content_type)
543 }
544 CssPropertyType::FlowInto => CssProperty::FlowInto(CssPropertyValue::$content_type),
545 CssPropertyType::FlowFrom => CssProperty::FlowFrom(CssPropertyValue::$content_type),
546 CssPropertyType::ShapeOutside => {
547 CssProperty::ShapeOutside(CssPropertyValue::$content_type)
548 }
549 CssPropertyType::ShapeInside => {
550 CssProperty::ShapeInside(CssPropertyValue::$content_type)
551 }
552 CssPropertyType::ClipPath => CssProperty::ClipPath(CssPropertyValue::$content_type),
553 CssPropertyType::ShapeMargin => {
554 CssProperty::ShapeMargin(CssPropertyValue::$content_type)
555 }
556 CssPropertyType::ShapeImageThreshold => {
557 CssProperty::ShapeImageThreshold(CssPropertyValue::$content_type)
558 }
559 CssPropertyType::Content => CssProperty::Content(CssPropertyValue::$content_type),
560 CssPropertyType::CounterReset => {
561 CssProperty::CounterReset(CssPropertyValue::$content_type)
562 }
563 CssPropertyType::CounterIncrement => {
564 CssProperty::CounterIncrement(CssPropertyValue::$content_type)
565 }
566 CssPropertyType::ListStyleType => {
567 CssProperty::ListStyleType(CssPropertyValue::$content_type)
568 }
569 CssPropertyType::ListStylePosition => {
570 CssProperty::ListStylePosition(CssPropertyValue::$content_type)
571 }
572 CssPropertyType::StringSet => CssProperty::StringSet(CssPropertyValue::$content_type),
573 CssPropertyType::TableLayout => {
574 CssProperty::TableLayout(CssPropertyValue::$content_type)
575 }
576 CssPropertyType::BorderCollapse => {
577 CssProperty::BorderCollapse(CssPropertyValue::$content_type)
578 }
579 CssPropertyType::BorderSpacing => {
580 CssProperty::BorderSpacing(CssPropertyValue::$content_type)
581 }
582 CssPropertyType::CaptionSide => {
583 CssProperty::CaptionSide(CssPropertyValue::$content_type)
584 }
585 CssPropertyType::EmptyCells => CssProperty::EmptyCells(CssPropertyValue::$content_type),
586 CssPropertyType::FontWeight => CssProperty::FontWeight(CssPropertyValue::$content_type),
587 CssPropertyType::FontStyle => CssProperty::FontStyle(CssPropertyValue::$content_type),
588 CssPropertyType::UnicodeBidi => {
589 CssProperty::UnicodeBidi(CssPropertyValue::$content_type)
590 }
591 CssPropertyType::TextBoxTrim => {
592 CssProperty::TextBoxTrim(CssPropertyValue::$content_type)
593 }
594 CssPropertyType::TextBoxEdge => {
595 CssProperty::TextBoxEdge(CssPropertyValue::$content_type)
596 }
597 CssPropertyType::DominantBaseline => {
598 CssProperty::DominantBaseline(CssPropertyValue::$content_type)
599 }
600 CssPropertyType::AlignmentBaseline => {
601 CssProperty::AlignmentBaseline(CssPropertyValue::$content_type)
602 }
603 CssPropertyType::BaselineSource => {
604 CssProperty::BaselineSource(CssPropertyValue::$content_type)
605 }
606 CssPropertyType::LineFitEdge => {
607 CssProperty::LineFitEdge(CssPropertyValue::$content_type)
608 }
609 CssPropertyType::InitialLetterAlign => {
610 CssProperty::InitialLetterAlign(CssPropertyValue::$content_type)
611 }
612 CssPropertyType::InitialLetterWrap => {
613 CssProperty::InitialLetterWrap(CssPropertyValue::$content_type)
614 }
615 CssPropertyType::ScrollbarGutter => {
616 CssProperty::ScrollbarGutter(CssPropertyValue::$content_type)
617 }
618 CssPropertyType::OverflowClipMargin => {
619 CssProperty::OverflowClipMargin(CssPropertyValue::$content_type)
620 }
621 CssPropertyType::Clip => CssProperty::Clip(CssPropertyValue::$content_type),
622 }
623 }};
624}