#![allow(warnings)]
mod impls;
use super::prelude::*;
use impls::*;
#[syntax(" <line-width> || <line-style> || <color> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderBottomColor|BorderBottomStyle|BorderBottomWidth|BorderColor|BorderLeftColor|BorderLeftStyle|BorderLeftWidth|BorderRightColor|BorderRightStyle|BorderRightWidth|BorderStyle|BorderTopColor|BorderTopStyle|BorderTopWidth|BorderWidth,
shorthand_resets = BorderImage,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Top|Bottom|Left|Right,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderStyleValue<'a>;
#[syntax(" <'border-block-start'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderBlockColor|BorderBlockEndColor|BorderBlockEndStyle|BorderBlockEndWidth|BorderBlockStartColor|BorderBlockStartStyle|BorderBlockStartWidth|BorderBlockStyle|BorderBlockWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockStart|BlockEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockStyleValue<'a>;
#[syntax(" <'border-top-clip'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockStart|BlockEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockClipStyleValue<'a>;
#[syntax(" <'border-top-color'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderBlockEndColor|BorderBlockStartColor,
shorthand_group = BorderBlock,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockStart|BlockEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockColorStyleValue<'a>;
#[syntax(" <line-width> || <line-style> || <color> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "See individual properties",
applies_to = Unknown,
animation_type = Unknown,
longhands = BorderBlockEndColor|BorderBlockEndStyle|BorderBlockEndWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-end"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockEndStyleValue<'a>;
#[syntax(" none | [ <length-percentage [0,∞]> | <flex> ]+ ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderEdge,
property_group = Borders,
computed_value_type = SpecifiedWithAbsoluteLengths,
canonical_order = "per grammar",
logical_property_group = BorderClip,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-end-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockEndClipStyleValue<'a>;
#[syntax(" <color> | <image-1D> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "currentcolor",
applies_to = Unknown,
animation_type = Unknown,
shorthand_group = BorderBlock,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderColor,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-end-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderBlockEndColorStyleValue<'a> {}
#[syntax(" <length-percentage [0,∞]>{1,2} [ / <length-percentage [0,∞]>{1,2} ]? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-end-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockEndRadiusStyleValue<'a>;
#[syntax(" <line-style> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = BorderBlock,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderStyle,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-end-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockEndStyleStyleValue<'a>;
#[syntax(" <line-width> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "medium",
applies_to = Unknown,
animation_type = ByComputedValue,
shorthand_group = BorderBlock,
property_group = Borders,
computed_value_type = AbsoluteLength,
canonical_order = "per grammar",
logical_property_group = BorderWidth,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-end-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockEndWidthStyleValue<'a>;
#[syntax(" <line-width> || <line-style> || <color> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "See individual properties",
applies_to = Unknown,
animation_type = Unknown,
longhands = BorderBlockStartColor|BorderBlockStartStyle|BorderBlockStartWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockStart,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-start"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockStartStyleValue<'a>;
#[syntax(" none | [ <length-percentage [0,∞]> | <flex> ]+ ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderEdge,
property_group = Borders,
computed_value_type = SpecifiedWithAbsoluteLengths,
canonical_order = "per grammar",
logical_property_group = BorderClip,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-start-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockStartClipStyleValue<'a>;
#[syntax(" <color> | <image-1D> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "currentcolor",
applies_to = Unknown,
animation_type = Unknown,
shorthand_group = BorderBlock,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderColor,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-start-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderBlockStartColorStyleValue<'a> {}
#[syntax(" <length-percentage [0,∞]>{1,2} [ / <length-percentage [0,∞]>{1,2} ]? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-start-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockStartRadiusStyleValue<'a>;
#[syntax(" <line-style> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = BorderBlock,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderStyle,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-start-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockStartStyleStyleValue<'a>;
#[syntax(" <line-width> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "medium",
applies_to = Unknown,
animation_type = ByComputedValue,
shorthand_group = BorderBlock,
property_group = Borders,
computed_value_type = AbsoluteLength,
canonical_order = "per grammar",
logical_property_group = BorderWidth,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-start-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockStartWidthStyleValue<'a>;
#[syntax(" <'border-top-style'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderBlockEndStyle|BorderBlockStartStyle,
shorthand_group = BorderBlock,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockStart|BlockEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockStyleStyleValue<'a>;
#[syntax(" <'border-top-width'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderBlockEndWidth|BorderBlockStartWidth,
shorthand_group = BorderBlock,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockStart|BlockEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-block-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBlockWidthStyleValue<'a>;
#[syntax(" <line-width> || <line-style> || <color> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "See individual properties",
applies_to = Unknown,
animation_type = Unknown,
longhands = BorderBottomColor|BorderBottomStyle|BorderBottomWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Bottom,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-bottom"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBottomStyleValue<'a>;
#[syntax(" none | [ <length-percentage [0,∞]> | <flex> ]+ ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderEdge,
property_group = Borders,
computed_value_type = SpecifiedWithAbsoluteLengths,
canonical_order = "per grammar",
logical_property_group = BorderClip,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-bottom-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBottomClipStyleValue<'a>;
#[syntax(" <color> | <image-1D> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "currentcolor",
applies_to = Unknown,
animation_type = Unknown,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderColor,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-bottom-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderBottomColorStyleValue<'a> {}
#[syntax(" <border-radius> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderBox,
shorthand_group = BorderRadius,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderRadius,
box_side = Bottom|Left,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-bottom-left-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBottomLeftRadiusStyleValue<'a>;
#[syntax(" <length-percentage [0,∞]>{1,2} [ / <length-percentage [0,∞]>{1,2} ]? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-bottom-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBottomRadiusStyleValue<'a>;
#[syntax(" <border-radius> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderBox,
shorthand_group = BorderRadius,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderRadius,
box_side = Bottom|Right,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(
feature = "css_feature_data",
derive(ToCSSFeature),
css_feature("css.properties.border-bottom-right-radius")
)]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBottomRightRadiusStyleValue<'a>;
#[syntax(" <line-style> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderStyle,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-bottom-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBottomStyleStyleValue<'a>;
#[syntax(" <line-width> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "medium",
applies_to = Unknown,
animation_type = ByComputedValue,
shorthand_group = Border,
property_group = Borders,
computed_value_type = AbsoluteLength,
canonical_order = "per grammar",
logical_property_group = BorderWidth,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-bottom-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderBottomWidthStyleValue<'a>;
#[syntax(" <'border-top-clip'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderClipStyleValue<'a>;
#[syntax(" [ <color> | <image-1D> ]{1,4} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderBottomColor|BorderLeftColor|BorderRightColor|BorderTopColor,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Top|Bottom|Left|Right,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderColorStyleValue<'a>;
#[syntax(" <border-radius> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderRadius,
box_side = BlockEnd|InlineEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-end-end-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderEndEndRadiusStyleValue<'a>;
#[syntax(" <border-radius> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderRadius,
box_side = BlockEnd|InlineStart,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-end-start-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderEndStartRadiusStyleValue<'a>;
#[syntax(
" <'border-image-source'> || <'border-image-slice'> [ / <'border-image-width'> | / <'border-image-width'>? / <'border-image-outset'> ]? || <'border-image-repeat'> "
)]
#[derive(
Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "See individual properties",
applies_to = Unknown,
animation_type = Unknown,
longhands = BorderImageOutset|BorderImageRepeat|BorderImageSlice|BorderImageSource|BorderImageWidth,
reset_by_shorthands = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-image"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderImageStyleValue<'a> {}
#[syntax(" [ <length [0,∞]> | <number [0,∞]> ]{1,4} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Unknown,
animation_type = ByComputedValue,
shorthand_group = BorderImage,
reset_by_shorthands = Border,
property_group = Borders,
computed_value_type = AbsoluteLength,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-image-outset"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderImageOutsetStyleValue<'a>;
#[syntax(" [ stretch | repeat | round | space ]{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "stretch",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = BorderImage,
reset_by_shorthands = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-image-repeat"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderImageRepeatStyleValue<'a>;
#[syntax(" [<number [0,∞]> | <percentage [0,∞]>]{1,4} && fill? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "100%",
applies_to = Unknown,
animation_type = ByComputedValue,
percentages = BorderImageArea,
shorthand_group = BorderImage,
reset_by_shorthands = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-image-slice"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderImageSliceStyleValue<'a>;
#[syntax(" none | <image> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = BorderImage,
reset_by_shorthands = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-image-source"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderImageSourceStyleValue<'a>;
#[syntax(" [ <length-percentage [0,∞]> | <number [0,∞]> | auto ]{1,4} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "1",
applies_to = Unknown,
animation_type = ByComputedValue,
percentages = BorderImageArea,
shorthand_group = BorderImage,
reset_by_shorthands = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-image-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderImageWidthStyleValue<'a>;
#[syntax(" <'border-block-start'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderInlineColor|BorderInlineStyle|BorderInlineWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = InlineStart|InlineEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineStyleValue<'a>;
#[syntax(" <'border-top-clip'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = InlineStart|InlineEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineClipStyleValue<'a>;
#[syntax(" <'border-top-color'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
shorthand_group = BorderInline,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = InlineStart|InlineEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineColorStyleValue<'a>;
#[syntax(" <line-width> || <line-style> || <color> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "See individual properties",
applies_to = Unknown,
animation_type = Unknown,
longhands = BorderInlineEndColor|BorderInlineEndStyle|BorderInlineEndWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = InlineEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-end"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineEndStyleValue<'a>;
#[syntax(" none | [ <length-percentage [0,∞]> | <flex> ]+ ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderEdge,
property_group = Borders,
computed_value_type = SpecifiedWithAbsoluteLengths,
canonical_order = "per grammar",
logical_property_group = BorderClip,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-end-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineEndClipStyleValue<'a>;
#[syntax(" <color> | <image-1D> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "currentcolor",
applies_to = Unknown,
animation_type = Unknown,
shorthand_group = BorderInlineEnd,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderColor,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-end-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderInlineEndColorStyleValue<'a> {}
#[syntax(" <length-percentage [0,∞]>{1,2} [ / <length-percentage [0,∞]>{1,2} ]? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-end-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineEndRadiusStyleValue<'a>;
#[syntax(" <line-style> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = BorderInlineEnd,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderStyle,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-end-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineEndStyleStyleValue<'a>;
#[syntax(" <line-width> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "medium",
applies_to = Unknown,
animation_type = ByComputedValue,
shorthand_group = BorderInlineEnd,
property_group = Borders,
computed_value_type = AbsoluteLength,
canonical_order = "per grammar",
logical_property_group = BorderWidth,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-end-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineEndWidthStyleValue<'a>;
#[syntax(" <line-width> || <line-style> || <color> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "See individual properties",
applies_to = Unknown,
animation_type = Unknown,
longhands = BorderInlineStartColor|BorderInlineStartStyle|BorderInlineStartWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = InlineStart,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-start"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineStartStyleValue<'a>;
#[syntax(" none | [ <length-percentage [0,∞]> | <flex> ]+ ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderEdge,
property_group = Borders,
computed_value_type = SpecifiedWithAbsoluteLengths,
canonical_order = "per grammar",
logical_property_group = BorderClip,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-start-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineStartClipStyleValue<'a>;
#[syntax(" <color> | <image-1D> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "currentcolor",
applies_to = Unknown,
animation_type = Unknown,
shorthand_group = BorderInlineStart,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderColor,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-start-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderInlineStartColorStyleValue<'a> {}
#[syntax(" <length-percentage [0,∞]>{1,2} [ / <length-percentage [0,∞]>{1,2} ]? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(
feature = "css_feature_data",
derive(ToCSSFeature),
css_feature("css.properties.border-inline-start-radius")
)]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineStartRadiusStyleValue<'a>;
#[syntax(" <line-style> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = BorderInlineStart,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderStyle,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-start-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineStartStyleStyleValue<'a>;
#[syntax(" <line-width> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "medium",
applies_to = Unknown,
animation_type = ByComputedValue,
shorthand_group = BorderInlineStart,
property_group = Borders,
computed_value_type = AbsoluteLength,
canonical_order = "per grammar",
logical_property_group = BorderWidth,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-start-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineStartWidthStyleValue<'a>;
#[syntax(" <'border-top-style'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
shorthand_group = BorderInline,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = InlineStart|InlineEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineStyleStyleValue<'a>;
#[syntax(" <'border-top-width'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
shorthand_group = BorderInline,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = InlineStart|InlineEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-inline-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderInlineWidthStyleValue<'a>;
#[syntax(" <line-width> || <line-style> || <color> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "See individual properties",
applies_to = Unknown,
animation_type = Unknown,
longhands = BorderLeftColor|BorderLeftStyle|BorderLeftWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Left,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-left"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderLeftStyleValue<'a>;
#[syntax(" none | [ <length-percentage [0,∞]> | <flex> ]+ ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderEdge,
property_group = Borders,
computed_value_type = SpecifiedWithAbsoluteLengths,
canonical_order = "per grammar",
logical_property_group = BorderClip,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-left-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderLeftClipStyleValue<'a>;
#[syntax(" <color> | <image-1D> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "currentcolor",
applies_to = Unknown,
animation_type = Unknown,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderColor,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-left-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderLeftColorStyleValue<'a> {}
#[syntax(" <length-percentage [0,∞]>{1,2} [ / <length-percentage [0,∞]>{1,2} ]? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-left-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderLeftRadiusStyleValue<'a>;
#[syntax(" <line-style> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderStyle,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-left-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderLeftStyleStyleValue<'a>;
#[syntax(" <line-width> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "medium",
applies_to = Unknown,
animation_type = ByComputedValue,
shorthand_group = Border,
property_group = Borders,
computed_value_type = AbsoluteLength,
canonical_order = "per grammar",
logical_property_group = BorderWidth,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-left-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderLeftWidthStyleValue<'a>;
#[syntax(
" all | [ sides | corners ] <length-percentage [0,∞]>? | [ top | right | bottom | left ] <length-percentage [0,∞]> "
)]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "all",
applies_to = Unknown,
animation_type = Discrete,
percentages = BorderBox,
property_group = Borders,
computed_value_type = AsSpecified,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-limit"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderLimitStyleValue<'a> {}
#[syntax(" <length-percentage [0,∞]>{1,4} [ / <length-percentage [0,∞]>{1,4} ]? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderBottomLeftRadius|BorderBottomRightRadius|BorderTopLeftRadius|BorderTopRightRadius,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderRadiusStyleValue<'a>;
#[syntax(" <line-width> || <line-style> || <color> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "See individual properties",
applies_to = Unknown,
animation_type = Unknown,
longhands = BorderRightColor|BorderRightStyle|BorderRightWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Right,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-right"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderRightStyleValue<'a>;
#[syntax(" none | [ <length-percentage [0,∞]> | <flex> ]+ ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderEdge,
property_group = Borders,
computed_value_type = SpecifiedWithAbsoluteLengths,
canonical_order = "per grammar",
logical_property_group = BorderClip,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-right-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderRightClipStyleValue<'a>;
#[syntax(" <color> | <image-1D> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "currentcolor",
applies_to = Unknown,
animation_type = Unknown,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderColor,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-right-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderRightColorStyleValue<'a> {}
#[syntax(" <length-percentage [0,∞]>{1,2} [ / <length-percentage [0,∞]>{1,2} ]? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-right-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderRightRadiusStyleValue<'a>;
#[syntax(" <line-style> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderStyle,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-right-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderRightStyleStyleValue<'a>;
#[syntax(" <line-width> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "medium",
applies_to = Unknown,
animation_type = ByComputedValue,
shorthand_group = Border,
property_group = Borders,
computed_value_type = AbsoluteLength,
canonical_order = "per grammar",
logical_property_group = BorderWidth,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-right-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderRightWidthStyleValue<'a>;
#[syntax(" none | [ <basic-shape> <geometry-box>?]{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderShapeStyleValue<'a>;
#[syntax(" <border-radius> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderRadius,
box_side = BlockStart|InlineEnd,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-start-end-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderStartEndRadiusStyleValue<'a>;
#[syntax(" <border-radius> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderRadius,
box_side = BlockStart|InlineStart,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-start-start-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderStartStartRadiusStyleValue<'a>;
#[syntax(" <'border-top-style'>{1,4} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderBottomStyle|BorderLeftStyle|BorderRightStyle|BorderTopStyle,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Top|Bottom|Left|Right,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderStyleStyleValue<'a>;
#[syntax(" <line-width> || <line-style> || <color> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "See individual properties",
applies_to = Unknown,
animation_type = Unknown,
longhands = BorderTopColor|BorderTopStyle|BorderTopWidth,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Top,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-top"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderTopStyleValue<'a>;
#[syntax(" none | [ <length-percentage [0,∞]> | <flex> ]+ ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderEdge,
property_group = Borders,
computed_value_type = SpecifiedWithAbsoluteLengths,
canonical_order = "per grammar",
logical_property_group = BorderClip,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-top-clip"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderTopClipStyleValue<'a>;
#[syntax(" <color> | <image-1D> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "currentcolor",
applies_to = Unknown,
animation_type = Unknown,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderColor,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-top-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub enum BorderTopColorStyleValue<'a> {}
#[syntax(" <border-radius> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderBox,
shorthand_group = BorderRadius,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderRadius,
box_side = Top|Left,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-top-left-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderTopLeftRadiusStyleValue<'a>;
#[syntax(" <length-percentage [0,∞]>{1,2} [ / <length-percentage [0,∞]>{1,2} ]? ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-top-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderTopRadiusStyleValue<'a>;
#[syntax(" <border-radius> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
percentages = BorderBox,
shorthand_group = BorderRadius,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderRadius,
box_side = Top|Right,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-top-right-radius"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderTopRightRadiusStyleValue<'a>;
#[syntax(" <line-style> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Unknown,
animation_type = Discrete,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = BorderStyle,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-top-style"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderTopStyleStyleValue<'a>;
#[syntax(" <line-width> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "medium",
applies_to = Unknown,
animation_type = ByComputedValue,
shorthand_group = Border,
property_group = Borders,
computed_value_type = AbsoluteLength,
canonical_order = "per grammar",
logical_property_group = BorderWidth,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-top-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderTopWidthStyleValue<'a>;
#[syntax(" <'border-top-width'>{1,4} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
longhands = BorderBottomWidth|BorderLeftWidth|BorderRightWidth|BorderTopWidth,
shorthand_group = Border,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Top|Bottom|Left|Right,
box_portion = Border,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.border-width"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BorderWidthStyleValue<'a>;
#[syntax(" <spread-shadow># ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.box-shadow"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BoxShadowStyleValue<'a>;
#[syntax(" <length [0,∞]># ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.box-shadow-blur"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BoxShadowBlurStyleValue<'a>;
#[syntax(" <color># ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "currentcolor",
applies_to = Elements,
animation_type = ByComputedValue,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.box-shadow-color"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BoxShadowColorStyleValue<'a>;
#[syntax(" [ none | <length>{1,2} ]# ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "none",
applies_to = Elements,
animation_type = ByComputedValue,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.box-shadow-offset"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BoxShadowOffsetStyleValue<'a>;
#[syntax(" [ outset | inset ]# ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "outset",
applies_to = Elements,
animation_type = ByComputedValue,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.box-shadow-position"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BoxShadowPositionStyleValue<'a>;
#[syntax(" <length># ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = ByComputedValue,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.box-shadow-spread"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct BoxShadowSpreadStyleValue<'a>;
#[syntax(" <'border-radius'> || <'corner-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerStyleValue<'a>;
#[syntax(" <'border-top-radius'> || <'corner-top-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockEnd,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-block-end"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBlockEndStyleValue<'a>;
#[syntax(" <'corner-top-left-shape'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-block-end-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBlockEndShapeStyleValue<'a>;
#[syntax(" <'border-top-radius'> || <'corner-top-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockStart,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-block-start"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBlockStartStyleValue<'a>;
#[syntax(" <'corner-top-left-shape'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-block-start-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBlockStartShapeStyleValue<'a>;
#[syntax(" <'border-top-radius'> || <'corner-top-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Bottom,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-bottom"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBottomStyleValue<'a>;
#[syntax(" <'border-top-left-radius'> || <'corner-top-left-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Bottom|Left,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-bottom-left"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBottomLeftStyleValue<'a>;
#[syntax(" <corner-shape-value> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "round",
applies_to = Unknown,
animation_type = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = CornerShape,
box_side = Bottom|Left,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-bottom-left-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBottomLeftShapeStyleValue<'a>;
#[syntax(" <'border-top-left-radius'> || <'corner-top-left-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Bottom|Right,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-bottom-right"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBottomRightStyleValue<'a>;
#[syntax(" <corner-shape-value> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "round",
applies_to = Unknown,
animation_type = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = CornerShape,
box_side = Bottom|Right,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-bottom-right-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBottomRightShapeStyleValue<'a>;
#[syntax(" <'corner-top-left-shape'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-bottom-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerBottomShapeStyleValue<'a>;
#[syntax(" <'border-top-left-radius'> || <'corner-top-left-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockEnd|InlineEnd,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-end-end"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerEndEndStyleValue<'a>;
#[syntax(" <corner-shape-value> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "round",
applies_to = Unknown,
animation_type = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = CornerShape,
box_side = BlockEnd|InlineEnd,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-end-end-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerEndEndShapeStyleValue<'a>;
#[syntax(" <'border-top-left-radius'> || <'corner-top-left-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockEnd|InlineStart,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-end-start"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerEndStartStyleValue<'a>;
#[syntax(" <corner-shape-value> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "round",
applies_to = Unknown,
animation_type = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = CornerShape,
box_side = BlockEnd|InlineStart,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-end-start-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerEndStartShapeStyleValue<'a>;
#[syntax(" <'border-top-radius'> || <'corner-top-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = InlineEnd,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-inline-end"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerInlineEndStyleValue<'a>;
#[syntax(" <'corner-top-left-shape'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-inline-end-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerInlineEndShapeStyleValue<'a>;
#[syntax(" <'border-top-radius'> || <'corner-top-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = InlineStart,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-inline-start"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerInlineStartStyleValue<'a>;
#[syntax(" <'corner-top-left-shape'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-inline-start-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerInlineStartShapeStyleValue<'a>;
#[syntax(" <'border-top-radius'> || <'corner-top-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Left,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-left"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerLeftStyleValue<'a>;
#[syntax(" <'corner-top-left-shape'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-left-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerLeftShapeStyleValue<'a>;
#[syntax(" <'border-top-radius'> || <'corner-top-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Right,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-right"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerRightStyleValue<'a>;
#[syntax(" <'corner-top-left-shape'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-right-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerRightShapeStyleValue<'a>;
#[syntax(" <'corner-top-left-shape'>{1,4} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "round",
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerShapeStyleValue<'a>;
#[syntax(" <'border-top-left-radius'> || <'corner-top-left-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockStart|InlineEnd,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-start-end"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerStartEndStyleValue<'a>;
#[syntax(" <corner-shape-value> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "round",
applies_to = Unknown,
animation_type = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = CornerShape,
box_side = BlockStart|InlineEnd,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-start-end-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerStartEndShapeStyleValue<'a>;
#[syntax(" <'border-top-left-radius'> || <'corner-top-left-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = BlockStart|InlineStart,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-start-start"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerStartStartStyleValue<'a>;
#[syntax(" <corner-shape-value> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "round",
applies_to = Unknown,
animation_type = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = CornerShape,
box_side = BlockStart|InlineStart,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-start-start-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerStartStartShapeStyleValue<'a>;
#[syntax(" <'border-top-radius'> || <'corner-top-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Top,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-top"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerTopStyleValue<'a>;
#[syntax(" <'border-top-left-radius'> || <'corner-top-left-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Top|Left,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-top-left"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerTopLeftStyleValue<'a>;
#[syntax(" <corner-shape-value> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "round",
applies_to = Unknown,
animation_type = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = CornerShape,
box_side = Top|Left,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-top-left-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerTopLeftShapeStyleValue<'a>;
#[syntax(" <'border-top-left-radius'> || <'corner-top-left-shape'> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "0",
applies_to = Elements,
animation_type = Unknown,
percentages = BorderBox,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
box_side = Top|Right,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-top-right"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerTopRightStyleValue<'a>;
#[syntax(" <corner-shape-value> ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "round",
applies_to = Unknown,
animation_type = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
logical_property_group = CornerShape,
box_side = Top|Right,
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-top-right-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerTopRightShapeStyleValue<'a>;
#[syntax(" <'corner-top-left-shape'>{1,2} ")]
#[derive(
Parse, Peek, ToSpan, ToCursors, DeclarationMetadata, SemanticEq, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
)]
#[declaration_metadata(
initial = "see individual properties",
inherits = Unknown,
applies_to = Unknown,
animation_type = Unknown,
percentages = Unknown,
property_group = Borders,
computed_value_type = Unknown,
canonical_order = "per grammar",
)]
#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.corner-top-shape"))]
#[cfg_attr(feature = "visitable", derive(Visitable), visit)]
#[derive(csskit_derives::NodeWithMetadata)]
pub struct CornerTopShapeStyleValue<'a>;