1use crate::CssAtomSet;
2use css_parse::{Diagnostic, pseudo_class, pseudo_element};
3use csskit_derives::{SemanticEq, ToCursors, ToSpan};
4
5pseudo_element!(
6 #[derive(ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
7 #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
8 #[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit(self))]
9#[derive(csskit_derives::NodeWithMetadata)]
10 pub enum MsPseudoElement {
11 Backdrop: CssAtomSet::_MsBackdrop,
12 Browse: CssAtomSet::_MsBrowse,
13 Check: CssAtomSet::_MsCheck,
14 Clear: CssAtomSet::_MsClear,
15 Expand: CssAtomSet::_MsExpand,
16 Fill: CssAtomSet::_MsFill,
17 FillUpper: CssAtomSet::_MsFillUpper,
18 FillLower: CssAtomSet::_MsFillLower,
19 InputPlaceholder: CssAtomSet::_MsInputPlaceholder,
20 Placeholder: CssAtomSet::_MsPlaceholder,
21 Reveal: CssAtomSet::_MsReveal,
22 Selection: CssAtomSet::_MsSelection,
23 Thumb: CssAtomSet::_MsThumb,
24 TicksAfter: CssAtomSet::_MsTicksAfter,
25 TicksBefore: CssAtomSet::_MsTicksBefore,
26 Tooltip: CssAtomSet::_MsTooltip,
27 Track: CssAtomSet::_MsTrack,
28 Value: CssAtomSet::_MsValue,
29 }
30);
31
32pseudo_class!(
33 #[derive(ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
34 #[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
35 #[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit(self))]
36#[derive(csskit_derives::NodeWithMetadata)]
37 pub enum MsPseudoClass {
38 Fullscreen: CssAtomSet::_MsFullscreen,
39 InputPlaceholder: CssAtomSet::_MsInputPlaceholder
40 }
41);