Skip to main content

css_ast/values/svg_painting/
mod.rs

1// AUTO-GENERATED - Do not edit this file directly.
2#![allow(warnings)]
3//! https://w3c.github.io/svgwg/svg2-draft/painting.html
4
5mod impls;
6use super::prelude::*;
7use impls::*;
8/// Represents the style value for `color-interpolation` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#color-interpolation).
9///
10/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
11///
12/// The grammar is defined as:
13///
14/// ```text,ignore
15/// auto | sRGB | linearRGB
16/// ```
17///
18/// https://w3c.github.io/svgwg/svg2-draft/painting.html#color-interpolation
19#[syntax(" auto | sRGB | linearRGB ")]
20#[derive(
21	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
22)]
23#[declaration_metadata(
24    initial = "sRGB",
25    inherits,
26    applies_to = Elements,
27    animation_type = Discrete,
28    property_group = SvgPainting,
29)]
30#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
31#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.color-interpolation"))]
32#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
33#[derive(csskit_derives::NodeWithMetadata)]
34pub enum ColorInterpolationStyleValue {}
35
36/// Represents the style value for `marker` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#marker).
37///
38/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
39///
40/// The grammar is defined as:
41///
42/// ```text,ignore
43/// none | <url>
44/// ```
45///
46/// https://w3c.github.io/svgwg/svg2-draft/painting.html#marker
47#[syntax(" none | <url> ")]
48#[derive(
49	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
50)]
51#[declaration_metadata(
52    initial = "none",
53    inherits,
54    applies_to = Unknown,
55    animation_type = Discrete,
56    property_group = SvgPainting,
57)]
58#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
59#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.marker"))]
60#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
61#[derive(csskit_derives::NodeWithMetadata)]
62pub struct MarkerStyleValue;
63
64/// Represents the style value for `marker-end` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-end).
65///
66/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
67///
68/// The grammar is defined as:
69///
70/// ```text,ignore
71/// none | <url>
72/// ```
73///
74/// https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-end
75#[syntax(" none | <url> ")]
76#[derive(
77	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
78)]
79#[declaration_metadata(
80    initial = "none",
81    inherits,
82    applies_to = Unknown,
83    animation_type = Discrete,
84    property_group = SvgPainting,
85)]
86#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
87#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.marker-end"))]
88#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
89#[derive(csskit_derives::NodeWithMetadata)]
90pub struct MarkerEndStyleValue;
91
92/// Represents the style value for `marker-mid` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-mid).
93///
94/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
95///
96/// The grammar is defined as:
97///
98/// ```text,ignore
99/// none | <url>
100/// ```
101///
102/// https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-mid
103#[syntax(" none | <url> ")]
104#[derive(
105	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
106)]
107#[declaration_metadata(
108    initial = "none",
109    inherits,
110    applies_to = Unknown,
111    animation_type = Discrete,
112    property_group = SvgPainting,
113)]
114#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
115#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.marker-mid"))]
116#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
117#[derive(csskit_derives::NodeWithMetadata)]
118pub struct MarkerMidStyleValue;
119
120/// Represents the style value for `marker-start` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-start).
121///
122/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
123///
124/// The grammar is defined as:
125///
126/// ```text,ignore
127/// none | <url>
128/// ```
129///
130/// https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-start
131#[syntax(" none | <url> ")]
132#[derive(
133	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
134)]
135#[declaration_metadata(
136    initial = "none",
137    inherits,
138    applies_to = Unknown,
139    animation_type = Discrete,
140    property_group = SvgPainting,
141)]
142#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
143#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.marker-start"))]
144#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
145#[derive(csskit_derives::NodeWithMetadata)]
146pub struct MarkerStartStyleValue;
147
148/// Represents the style value for `paint-order` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#paint-order).
149///
150/// The paint-order CSS property sets the z-order of strokes, fills, and (in SVG content) markers. For example, paint-order: markers stroke fill; draws the markers, then stroke on top of markers, then fill on top of both markers and stroke.
151///
152/// The grammar is defined as:
153///
154/// ```text,ignore
155/// normal | [ fill || stroke || markers ]
156/// ```
157///
158/// https://w3c.github.io/svgwg/svg2-draft/painting.html#paint-order
159#[syntax(" normal | [ fill || stroke || markers ] ")]
160#[derive(
161	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
162)]
163#[declaration_metadata(
164    initial = "normal",
165    inherits,
166    applies_to = Unknown,
167    animation_type = Discrete,
168    property_group = SvgPainting,
169)]
170#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
171#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.paint-order"))]
172#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
173#[derive(csskit_derives::NodeWithMetadata)]
174pub struct PaintOrderStyleValue;
175
176/// Represents the style value for `shape-rendering` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#shape-rendering).
177///
178/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
179///
180/// The grammar is defined as:
181///
182/// ```text,ignore
183/// auto | optimizeSpeed | crispEdges | geometricPrecision
184/// ```
185///
186/// https://w3c.github.io/svgwg/svg2-draft/painting.html#shape-rendering
187#[syntax(" auto | optimizeSpeed | crispEdges | geometricPrecision ")]
188#[derive(
189	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
190)]
191#[declaration_metadata(
192    initial = "auto",
193    inherits,
194    applies_to = Unknown,
195    animation_type = Discrete,
196    property_group = SvgPainting,
197)]
198#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
199#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.shape-rendering"))]
200#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
201#[derive(csskit_derives::NodeWithMetadata)]
202pub enum ShapeRenderingStyleValue {}
203
204/// Represents the style value for `text-rendering` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#text-rendering).
205///
206/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
207///
208/// The grammar is defined as:
209///
210/// ```text,ignore
211/// auto | optimizeSpeed | optimizeLegibility | geometricPrecision
212/// ```
213///
214/// https://w3c.github.io/svgwg/svg2-draft/painting.html#text-rendering
215#[syntax(" auto | optimizeSpeed | optimizeLegibility | geometricPrecision ")]
216#[derive(
217	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
218)]
219#[declaration_metadata(
220    initial = "auto",
221    inherits,
222    applies_to = Unknown,
223    animation_type = Discrete,
224    property_group = SvgPainting,
225)]
226#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
227#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-rendering"))]
228#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
229#[derive(csskit_derives::NodeWithMetadata)]
230pub enum TextRenderingStyleValue {}