css_ast 0.0.25

CSS Abstract Syntax Trees with visitable nodes and style value types.
Documentation
// AUTO-GENERATED - Do not edit this file directly.
#![allow(warnings)]
//! https://w3c.github.io/svgwg/svg2-draft/painting.html

mod impls;
use super::prelude::*;
use impls::*;
/// Represents the style value for `color-interpolation` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#color-interpolation).
///
/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
///
/// The grammar is defined as:
///
/// ```text,ignore
/// auto | sRGB | linearRGB
/// ```
///
/// https://w3c.github.io/svgwg/svg2-draft/painting.html#color-interpolation
#[syntax(" auto | sRGB | linearRGB ")]
#[derive(
	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
    initial = "sRGB",
    inherits,
    applies_to = Elements,
    animation_type = Discrete,
    property_group = SvgPainting,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.color-interpolation"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum ColorInterpolationStyleValue {}

/// Represents the style value for `marker` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#marker).
///
/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
///
/// The grammar is defined as:
///
/// ```text,ignore
/// none | <url>
/// ```
///
/// https://w3c.github.io/svgwg/svg2-draft/painting.html#marker
#[syntax(" none | <url> ")]
#[derive(
	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
    initial = "none",
    inherits,
    applies_to = Unknown,
    animation_type = Discrete,
    property_group = SvgPainting,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.marker"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct MarkerStyleValue;

/// Represents the style value for `marker-end` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-end).
///
/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
///
/// The grammar is defined as:
///
/// ```text,ignore
/// none | <url>
/// ```
///
/// https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-end
#[syntax(" none | <url> ")]
#[derive(
	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
    initial = "none",
    inherits,
    applies_to = Unknown,
    animation_type = Discrete,
    property_group = SvgPainting,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.marker-end"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct MarkerEndStyleValue;

/// Represents the style value for `marker-mid` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-mid).
///
/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
///
/// The grammar is defined as:
///
/// ```text,ignore
/// none | <url>
/// ```
///
/// https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-mid
#[syntax(" none | <url> ")]
#[derive(
	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
    initial = "none",
    inherits,
    applies_to = Unknown,
    animation_type = Discrete,
    property_group = SvgPainting,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.marker-mid"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct MarkerMidStyleValue;

/// Represents the style value for `marker-start` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-start).
///
/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
///
/// The grammar is defined as:
///
/// ```text,ignore
/// none | <url>
/// ```
///
/// https://w3c.github.io/svgwg/svg2-draft/painting.html#marker-start
#[syntax(" none | <url> ")]
#[derive(
	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
    initial = "none",
    inherits,
    applies_to = Unknown,
    animation_type = Discrete,
    property_group = SvgPainting,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.marker-start"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct MarkerStartStyleValue;

/// Represents the style value for `paint-order` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#paint-order).
///
/// 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.
///
/// The grammar is defined as:
///
/// ```text,ignore
/// normal | [ fill || stroke || markers ]
/// ```
///
/// https://w3c.github.io/svgwg/svg2-draft/painting.html#paint-order
#[syntax(" normal | [ fill || stroke || markers ] ")]
#[derive(
	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
    initial = "normal",
    inherits,
    applies_to = Unknown,
    animation_type = Discrete,
    property_group = SvgPainting,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.paint-order"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct PaintOrderStyleValue;

/// Represents the style value for `shape-rendering` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#shape-rendering).
///
/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
///
/// The grammar is defined as:
///
/// ```text,ignore
/// auto | optimizeSpeed | crispEdges | geometricPrecision
/// ```
///
/// https://w3c.github.io/svgwg/svg2-draft/painting.html#shape-rendering
#[syntax(" auto | optimizeSpeed | crispEdges | geometricPrecision ")]
#[derive(
	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
    initial = "auto",
    inherits,
    applies_to = Unknown,
    animation_type = Discrete,
    property_group = SvgPainting,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.shape-rendering"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum ShapeRenderingStyleValue {}

/// Represents the style value for `text-rendering` as defined in [SVG 2 Painting](https://w3c.github.io/svgwg/svg2-draft/painting.html#text-rendering).
///
/// The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
///
/// The grammar is defined as:
///
/// ```text,ignore
/// auto | optimizeSpeed | optimizeLegibility | geometricPrecision
/// ```
///
/// https://w3c.github.io/svgwg/svg2-draft/painting.html#text-rendering
#[syntax(" auto | optimizeSpeed | optimizeLegibility | geometricPrecision ")]
#[derive(
	Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
    initial = "auto",
    inherits,
    applies_to = Unknown,
    animation_type = Discrete,
    property_group = SvgPainting,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.text-rendering"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum TextRenderingStyleValue {}