css_ast/values/motion/mod.rs
1// AUTO-GENERATED from w3c/csswg-drafts
2// Commit: https://github.com/w3c/csswg-drafts/commit/7e27ad7484307dfdbe9d0e18ad19d02859389688
3// Do not edit this file directly.
4#![allow(warnings)]
5//! https://drafts.csswg.org/motion-1/
6
7mod impls;
8use super::prelude::*;
9use impls::*;
10// /// Represents the style value for `offset` as defined in [motion-1](https://drafts.csswg.org/motion-1/#offset).
11// ///
12// /// The offset CSS property animates an element along a defined motion path.
13// ///
14// /// The grammar is defined as:
15// ///
16// /// ```text,ignore
17// /// [ <'offset-position'>? [ <'offset-path'> [ <'offset-distance'> || <'offset-rotate'> ]? ]? ]! [ / <'offset-anchor'> ]?
18// /// ```
19// ///
20// /// https://drafts.csswg.org/motion-1/#offset
21// #[syntax(
22// " [ <'offset-position'>? [ <'offset-path'> [ <'offset-distance'> || <'offset-rotate'> ]? ]? ]! [ / <'offset-anchor'> ]? "
23// )]
24// #[derive(
25// Parse,
26// Peek,
27// ToSpan,
28// ToCursors,
29// DeclarationMetadata,
30// SemanticEq,
31// Debug,
32// Clone,
33// PartialEq,
34// Eq,
35// PartialOrd,
36// Ord,
37// Hash,
38// )]
39// #[declaration_metadata(
40// initial = "see individual properties",
41// inherits = Unknown,
42// applies_to = Unknown,
43// animation_type = Unknown,
44// percentages = Unknown,
45// longhands = OffsetAnchor|OffsetDistance|OffsetPath|OffsetPosition|OffsetRotate,
46// property_group = Motion,
47// computed_value_type = Unknown,
48// canonical_order = "per grammar",
49// )]
50// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
51// #[cfg_attr(
52// feature = "css_feature_data",
53// derive(ToCSSFeature),
54// css_feature("css.properties.offset")
55// )]
56// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
57// #[derive(csskit_derives::NodeWithMetadata)]
58// pub struct OffsetStyleValue;
59
60/// Represents the style value for `offset-anchor` as defined in [motion-1](https://drafts.csswg.org/motion-1/#offset-anchor).
61///
62/// The offset CSS property animates an element along a defined motion path.
63///
64/// The grammar is defined as:
65///
66/// ```text,ignore
67/// auto | <position>
68/// ```
69///
70/// https://drafts.csswg.org/motion-1/#offset-anchor
71#[syntax(" auto | <position> ")]
72#[derive(
73 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
74)]
75#[declaration_metadata(
76 initial = "auto",
77 applies_to = Unknown,
78 animation_type = ByComputedValue,
79 percentages = ReferenceBox,
80 shorthand_group = Offset,
81 property_group = Motion,
82 computed_value_type = Unknown,
83 canonical_order = "per grammar",
84)]
85#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
86#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.offset-anchor"))]
87#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
88#[derive(csskit_derives::NodeWithMetadata)]
89pub struct OffsetAnchorStyleValue;
90
91/// Represents the style value for `offset-distance` as defined in [motion-1](https://drafts.csswg.org/motion-1/#offset-distance).
92///
93/// The offset CSS property animates an element along a defined motion path.
94///
95/// The grammar is defined as:
96///
97/// ```text,ignore
98/// <length-percentage>
99/// ```
100///
101/// https://drafts.csswg.org/motion-1/#offset-distance
102#[syntax(" <length-percentage> ")]
103#[derive(
104 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
105)]
106#[declaration_metadata(
107 initial = "0",
108 applies_to = Unknown,
109 animation_type = ByComputedValue,
110 percentages = Unknown,
111 shorthand_group = Offset,
112 property_group = Motion,
113 computed_value_type = Unknown,
114 canonical_order = "per grammar",
115)]
116#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
117#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.offset-distance"))]
118#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
119#[derive(csskit_derives::NodeWithMetadata)]
120pub struct OffsetDistanceStyleValue;
121
122// /// Represents the style value for `offset-path` as defined in [motion-1](https://drafts.csswg.org/motion-1/#offset-path).
123// ///
124// /// The offset CSS property animates an element along a defined motion path.
125// ///
126// /// The grammar is defined as:
127// ///
128// /// ```text,ignore
129// /// none | <offset-path> || <coord-box>
130// /// ```
131// ///
132// /// https://drafts.csswg.org/motion-1/#offset-path
133// #[syntax(" none | <offset-path> || <coord-box> ")]
134// #[derive(
135// Parse,
136// Peek,
137// ToSpan,
138// ToCursors,
139// DeclarationMetadata,
140// SemanticEq,
141// Debug,
142// Clone,
143// PartialEq,
144// Eq,
145// PartialOrd,
146// Ord,
147// Hash,
148// )]
149// #[declaration_metadata(
150// initial = "none",
151// applies_to = Unknown,
152// animation_type = ByComputedValue,
153// shorthand_group = Offset,
154// property_group = Motion,
155// computed_value_type = AsSpecified,
156// canonical_order = "per grammar",
157// )]
158// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
159// #[cfg_attr(
160// feature = "css_feature_data",
161// derive(ToCSSFeature),
162// css_feature("css.properties.offset-path")
163// )]
164// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
165// #[derive(csskit_derives::NodeWithMetadata)]
166// pub struct OffsetPathStyleValue;
167
168/// Represents the style value for `offset-position` as defined in [motion-1](https://drafts.csswg.org/motion-1/#offset-position).
169///
170/// The offset CSS property animates an element along a defined motion path.
171///
172/// The grammar is defined as:
173///
174/// ```text,ignore
175/// normal | auto | <position>
176/// ```
177///
178/// https://drafts.csswg.org/motion-1/#offset-position
179#[syntax(" normal | auto | <position> ")]
180#[derive(
181 Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
182)]
183#[declaration_metadata(
184 initial = "normal",
185 applies_to = Unknown,
186 animation_type = ByComputedValue,
187 percentages = Unknown,
188 shorthand_group = Offset,
189 property_group = Motion,
190 computed_value_type = Unknown,
191 canonical_order = "per grammar",
192)]
193#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
194#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.offset-position"))]
195#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
196#[derive(csskit_derives::NodeWithMetadata)]
197pub enum OffsetPositionStyleValue {}
198
199// /// Represents the style value for `offset-rotate` as defined in [motion-1](https://drafts.csswg.org/motion-1/#offset-rotate).
200// ///
201// /// The offset CSS property animates an element along a defined motion path.
202// ///
203// /// The grammar is defined as:
204// ///
205// /// ```text,ignore
206// /// [ auto | reverse ] || <angle>
207// /// ```
208// ///
209// /// https://drafts.csswg.org/motion-1/#offset-rotate
210// #[syntax(" [ auto | reverse ] || <angle> ")]
211// #[derive(
212// Parse,
213// Peek,
214// ToSpan,
215// ToCursors,
216// DeclarationMetadata,
217// SemanticEq,
218// Debug,
219// Clone,
220// PartialEq,
221// Eq,
222// PartialOrd,
223// Ord,
224// Hash,
225// )]
226// #[declaration_metadata(
227// initial = "auto",
228// applies_to = Unknown,
229// animation_type = ByComputedValue,
230// shorthand_group = Offset,
231// property_group = Motion,
232// computed_value_type = Unknown,
233// canonical_order = "per grammar",
234// )]
235// #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
236// #[cfg_attr(
237// feature = "css_feature_data",
238// derive(ToCSSFeature),
239// css_feature("css.properties.offset-rotate")
240// )]
241// #[cfg_attr(feature = "visitable", derive(Visitable), visit)]
242// #[derive(csskit_derives::NodeWithMetadata)]
243// pub struct OffsetRotateStyleValue;