css_ast/types/shape_box.rs
1use super::prelude::*;
2use crate::VisualBox;
3
4/// <https://www.w3.org/TR/css-shapes-1/#typedef-shape-box>
5///
6/// ```text,ignore
7/// <shape-box> = <visual-box> | margin-box
8/// ```
9#[derive(Parse, Peek, SemanticEq, ToCursors, ToSpan, Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
10#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
11#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit(self))]
12#[derive(csskit_derives::NodeWithMetadata)]
13pub enum ShapeBox {
14 VisualBox(VisualBox),
15 #[atom(CssAtomSet::MarginBox)]
16 MarginBox(T![Ident]),
17}