css_ast/types/
display_inside.rs1use super::prelude::*;
2
3#[derive(
9 Parse, Peek, IntoCursor, ToSpan, SemanticEq, ToCursors, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash,
10)]
11#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
12#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit(skip))]
13#[derive(csskit_derives::NodeWithMetadata)]
14pub enum DisplayInside {
15 #[atom(CssAtomSet::Flow)]
16 Flow(T![Ident]),
17 #[atom(CssAtomSet::FlowRoot)]
18 FlowRoot(T![Ident]),
19 #[atom(CssAtomSet::Table)]
20 Table(T![Ident]),
21 #[atom(CssAtomSet::Flex)]
22 Flex(T![Ident]),
23 #[atom(CssAtomSet::Grid)]
24 Grid(T![Ident]),
25 #[atom(CssAtomSet::Ruby)]
26 Ruby(T![Ident]),
27}
28
29#[cfg(test)]
30mod tests {
31 use super::*;
32 use crate::CssAtomSet;
33 use css_parse::{assert_parse, assert_peek_false};
34
35 #[test]
36 fn size_test() {
37 assert_eq!(std::mem::size_of::<DisplayInside>(), 16);
38 }
39
40 #[test]
41 fn test_writes() {
42 assert_parse!(CssAtomSet::ATOMS, DisplayInside, "flow");
43 assert_parse!(CssAtomSet::ATOMS, DisplayInside, "flow-root");
44 assert_parse!(CssAtomSet::ATOMS, DisplayInside, "table");
45 assert_parse!(CssAtomSet::ATOMS, DisplayInside, "flex");
46 assert_parse!(CssAtomSet::ATOMS, DisplayInside, "grid");
47 assert_parse!(CssAtomSet::ATOMS, DisplayInside, "ruby");
48 }
49
50 #[test]
51 fn test_errors() {
52 assert_peek_false!(CssAtomSet::ATOMS, DisplayInside, "block");
53 }
54}