1#![allow(warnings)]
5mod impls;
8use super::prelude::*;
9use impls::*;
10#[syntax(" <rect()> | auto ")]
22#[derive(
23 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
24)]
25#[declaration_metadata(
26 initial = "auto",
27 applies_to = Unknown,
28 animation_type = ByComputedValue,
29 property_group = Masking,
30 computed_value_type = AsSpecified,
31 canonical_order = "per grammar",
32)]
33#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
34#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.clip"))]
35#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
36#[derive(csskit_derives::NodeWithMetadata)]
37pub struct ClipStyleValue;
38
39#[syntax(" <clip-source> | [ <basic-shape> || <geometry-box> ] | none ")]
51#[derive(
52 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
53)]
54#[declaration_metadata(
55 initial = "none",
56 applies_to = Unknown,
57 animation_type = ByComputedValue,
58 property_group = Masking,
59 computed_value_type = SpecifiedWithAbsoluteUrls,
60 canonical_order = "per grammar",
61)]
62#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
63#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.clip-path"))]
64#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
65#[derive(csskit_derives::NodeWithMetadata)]
66pub enum ClipPathStyleValue {}
67
68#[syntax(" nonzero | evenodd ")]
80#[derive(
81 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
82)]
83#[declaration_metadata(
84 initial = "nonzero",
85 inherits,
86 applies_to = Unknown,
87 animation_type = Discrete,
88 property_group = Masking,
89 computed_value_type = AsSpecified,
90 canonical_order = "per grammar",
91)]
92#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
93#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.clip-rule"))]
94#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
95#[derive(csskit_derives::NodeWithMetadata)]
96pub enum ClipRuleStyleValue {}
97
98#[syntax(" <mask-layer># ")]
110#[derive(
111 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
112)]
113#[declaration_metadata(
114 initial = "see individual properties",
115 applies_to = Unknown,
116 animation_type = Unknown,
117 percentages = Unknown,
118 longhands = MaskClip|MaskComposite|MaskImage|MaskMode|MaskOrigin|MaskPosition|MaskRepeat|MaskSize,
119 property_group = Masking,
120 computed_value_type = Unknown,
121 canonical_order = "per grammar",
122)]
123#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
124#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask"))]
125#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
126#[derive(csskit_derives::NodeWithMetadata)]
127pub struct MaskStyleValue<'a>;
128
129#[syntax(" luminance | alpha ")]
187#[derive(
188 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
189)]
190#[declaration_metadata(
191 initial = "alpha",
192 applies_to = Unknown,
193 animation_type = Discrete,
194 shorthand_group = MaskBorder,
195 property_group = Masking,
196 computed_value_type = AsSpecified,
197 canonical_order = "per grammar",
198)]
199#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
200#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-border-mode"))]
201#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
202#[derive(csskit_derives::NodeWithMetadata)]
203pub enum MaskBorderModeStyleValue {}
204
205#[syntax(" <'border-image-outset'> ")]
217#[derive(
218 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
219)]
220#[declaration_metadata(
221 initial = "0",
222 applies_to = Unknown,
223 animation_type = ByComputedValue,
224 shorthand_group = MaskBorder,
225 property_group = Masking,
226 computed_value_type = Unknown,
227 canonical_order = "per grammar",
228)]
229#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
230#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-border-outset"))]
231#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
232#[derive(csskit_derives::NodeWithMetadata)]
233pub struct MaskBorderOutsetStyleValue;
234
235#[syntax(" <'border-image-repeat'> ")]
247#[derive(
248 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
249)]
250#[declaration_metadata(
251 initial = "stretch",
252 applies_to = Unknown,
253 animation_type = Discrete,
254 shorthand_group = MaskBorder,
255 property_group = Masking,
256 computed_value_type = AsSpecified,
257 canonical_order = "per grammar",
258)]
259#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
260#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-border-repeat"))]
261#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
262#[derive(csskit_derives::NodeWithMetadata)]
263pub struct MaskBorderRepeatStyleValue;
264
265#[syntax(" <'border-image-slice'> ")]
277#[derive(
278 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
279)]
280#[declaration_metadata(
281 initial = "0",
282 applies_to = Unknown,
283 animation_type = ByComputedValue,
284 percentages = BorderImageArea,
285 shorthand_group = MaskBorder,
286 property_group = Masking,
287 computed_value_type = AsSpecified,
288 canonical_order = "per grammar",
289)]
290#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
291#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-border-slice"))]
292#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
293#[derive(csskit_derives::NodeWithMetadata)]
294pub struct MaskBorderSliceStyleValue;
295
296#[syntax(" <'border-image-source'> ")]
308#[derive(
309 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
310)]
311#[declaration_metadata(
312 initial = "none",
313 applies_to = Unknown,
314 animation_type = Discrete,
315 shorthand_group = MaskBorder,
316 property_group = Masking,
317 computed_value_type = Unknown,
318 canonical_order = "per grammar",
319)]
320#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
321#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-border-source"))]
322#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
323#[derive(csskit_derives::NodeWithMetadata)]
324pub struct MaskBorderSourceStyleValue<'a>;
325
326#[syntax(" <'border-image-width'> ")]
338#[derive(
339 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
340)]
341#[declaration_metadata(
342 initial = "auto",
343 applies_to = Unknown,
344 animation_type = ByComputedValue,
345 percentages = BorderImageArea,
346 shorthand_group = MaskBorder,
347 property_group = Masking,
348 computed_value_type = Unknown,
349 canonical_order = "per grammar",
350)]
351#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
352#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-border-width"))]
353#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
354#[derive(csskit_derives::NodeWithMetadata)]
355pub struct MaskBorderWidthStyleValue;
356
357#[syntax(" [ <coord-box> | no-clip ]# ")]
369#[derive(
370 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
371)]
372#[declaration_metadata(
373 initial = "border-box",
374 applies_to = Unknown,
375 animation_type = Discrete,
376 shorthand_group = Mask,
377 property_group = Masking,
378 computed_value_type = Unknown,
379 canonical_order = "per grammar",
380)]
381#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
382#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-clip"))]
383#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
384#[derive(csskit_derives::NodeWithMetadata)]
385pub struct MaskClipStyleValue<'a>;
386
387#[syntax(" <compositing-operator># ")]
399#[derive(
400 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
401)]
402#[declaration_metadata(
403 initial = "add",
404 applies_to = Unknown,
405 animation_type = Discrete,
406 shorthand_group = Mask,
407 property_group = Masking,
408 computed_value_type = Unknown,
409 canonical_order = "per grammar",
410)]
411#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
412#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-composite"))]
413#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
414#[derive(csskit_derives::NodeWithMetadata)]
415pub struct MaskCompositeStyleValue<'a>;
416
417#[syntax(" <mask-reference># ")]
429#[derive(
430 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
431)]
432#[declaration_metadata(
433 initial = "none",
434 applies_to = Unknown,
435 animation_type = Discrete,
436 shorthand_group = Mask,
437 property_group = Masking,
438 computed_value_type = Unknown,
439 canonical_order = "per grammar",
440)]
441#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
442#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-image"))]
443#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
444#[derive(csskit_derives::NodeWithMetadata)]
445pub struct MaskImageStyleValue<'a>;
446
447#[syntax(" <masking-mode># ")]
459#[derive(
460 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
461)]
462#[declaration_metadata(
463 initial = "match-source",
464 applies_to = Unknown,
465 animation_type = Discrete,
466 shorthand_group = Mask,
467 property_group = Masking,
468 computed_value_type = Unknown,
469 canonical_order = "per grammar",
470)]
471#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
472#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-mode"))]
473#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
474#[derive(csskit_derives::NodeWithMetadata)]
475pub struct MaskModeStyleValue<'a>;
476
477#[syntax(" <coord-box># ")]
489#[derive(
490 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
491)]
492#[declaration_metadata(
493 initial = "border-box",
494 applies_to = Unknown,
495 animation_type = Discrete,
496 shorthand_group = Mask,
497 property_group = Masking,
498 computed_value_type = Unknown,
499 canonical_order = "per grammar",
500)]
501#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
502#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-origin"))]
503#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
504#[derive(csskit_derives::NodeWithMetadata)]
505pub struct MaskOriginStyleValue<'a>;
506
507#[syntax(" <position># ")]
519#[derive(
520 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
521)]
522#[declaration_metadata(
523 initial = "0% 0%",
524 applies_to = Unknown,
525 animation_type = RepeatableList,
526 percentages = Unknown,
527 shorthand_group = Mask,
528 property_group = Masking,
529 computed_value_type = AbsoluteLengthOrPercentage,
530 canonical_order = "per grammar",
531)]
532#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
533#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-position"))]
534#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
535#[derive(csskit_derives::NodeWithMetadata)]
536pub struct MaskPositionStyleValue<'a>;
537
538#[syntax(" <repeat-style># ")]
550#[derive(
551 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
552)]
553#[declaration_metadata(
554 initial = "repeat",
555 applies_to = Unknown,
556 animation_type = Discrete,
557 shorthand_group = Mask,
558 property_group = Masking,
559 computed_value_type = Unknown,
560 canonical_order = "per grammar",
561)]
562#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
563#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-repeat"))]
564#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
565#[derive(csskit_derives::NodeWithMetadata)]
566pub struct MaskRepeatStyleValue<'a>;
567
568#[syntax(" <bg-size># ")]
580#[derive(
581 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
582)]
583#[declaration_metadata(
584 initial = "auto",
585 applies_to = Unknown,
586 animation_type = RepeatableList,
587 shorthand_group = Mask,
588 property_group = Masking,
589 computed_value_type = Unknown,
590 canonical_order = "per grammar",
591)]
592#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
593#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-size"))]
594#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
595#[derive(csskit_derives::NodeWithMetadata)]
596pub struct MaskSizeStyleValue<'a>;
597
598#[syntax(" luminance | alpha ")]
610#[derive(
611 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
612)]
613#[declaration_metadata(
614 initial = "luminance",
615 applies_to = Unknown,
616 animation_type = Discrete,
617 property_group = Masking,
618 computed_value_type = AsSpecified,
619 canonical_order = "per grammar",
620)]
621#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
622#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.mask-type"))]
623#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
624#[derive(csskit_derives::NodeWithMetadata)]
625pub enum MaskTypeStyleValue {}