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