1#![allow(warnings)]
2mod impls;
6use impls::*;
7
8#[syntax(
20 " auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region "
21)]
22#[derive(Parse, Peek, ToSpan, ToCursors, StyleValue, Visitable, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
23#[style_value(
24 initial = "auto",
25 applies_to = "block-level boxes, grid items, flex items, table row groups, table rows (but see prose)",
26 inherited = "no",
27 percentages = "n/a",
28 canonical_order = "per grammar",
29 animation_type = "discrete"
30)]
31#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
32#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.break-before"))]
33#[visit]
34pub enum BreakBeforeStyleValue {}
35
36#[syntax(
48 " auto | avoid | always | all | avoid-page | page | left | right | recto | verso | avoid-column | column | avoid-region | region "
49)]
50#[derive(Parse, Peek, ToSpan, ToCursors, StyleValue, Visitable, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
51#[style_value(
52 initial = "auto",
53 applies_to = "block-level boxes, grid items, flex items, table row groups, table rows (but see prose)",
54 inherited = "no",
55 percentages = "n/a",
56 canonical_order = "per grammar",
57 animation_type = "discrete"
58)]
59#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
60#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.break-after"))]
61#[visit]
62pub enum BreakAfterStyleValue {}
63
64#[syntax(" auto | avoid | avoid-page | avoid-column | avoid-region ")]
76#[derive(Parse, Peek, ToSpan, ToCursors, StyleValue, Visitable, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
77#[style_value(
78 initial = "auto",
79 applies_to = "all elements except inline-level boxes, internal ruby boxes, table column boxes, table column group boxes, absolutely-positioned boxes",
80 inherited = "no",
81 percentages = "n/a",
82 canonical_order = "per grammar",
83 animation_type = "discrete"
84)]
85#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
86#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.break-inside"))]
87#[visit]
88pub enum BreakInsideStyleValue {}
89
90#[syntax(" <integer [1,∞]> ")]
102#[derive(Parse, Peek, ToSpan, ToCursors, StyleValue, Visitable, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
103#[style_value(
104 initial = "2",
105 applies_to = "block containers that establish an inline formatting context",
106 inherited = "yes",
107 percentages = "n/a",
108 canonical_order = "per grammar",
109 animation_type = "by computed value type"
110)]
111#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
112#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.orphans"))]
113#[visit]
114pub struct OrphansStyleValue;
115
116#[syntax(" <integer [1,∞]> ")]
128#[derive(Parse, Peek, ToSpan, ToCursors, StyleValue, Visitable, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
129#[style_value(
130 initial = "2",
131 applies_to = "block containers that establish an inline formatting context",
132 inherited = "yes",
133 percentages = "n/a",
134 canonical_order = "per grammar",
135 animation_type = "by computed value type"
136)]
137#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
138#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.widows"))]
139#[visit]
140pub struct WidowsStyleValue;
141
142#[syntax(" slice | clone ")]
154#[derive(Parse, Peek, ToSpan, ToCursors, StyleValue, Visitable, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
155#[style_value(
156 initial = "slice",
157 applies_to = "all elements",
158 inherited = "no",
159 percentages = "n/a",
160 canonical_order = "per grammar",
161 animation_type = "discrete"
162)]
163#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
164#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.box-decoration-break"))]
165#[visit]
166pub enum BoxDecorationBreakStyleValue {}
167
168#[syntax(" auto | keep | discard ")]
178#[derive(Parse, Peek, ToSpan, ToCursors, StyleValue, Visitable, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
179#[style_value(
180 initial = "auto",
181 applies_to = "all elements",
182 inherited = "no",
183 percentages = "n/a",
184 canonical_order = "per grammar",
185 animation_type = "discrete"
186)]
187#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
188#[cfg_attr(feature = "css_feature_data", derive(ToCSSFeature), css_feature("css.properties.margin-break"))]
189#[visit]
190pub enum MarginBreakStyleValue {}