Skip to main content

css_ast/rules/media/features/
moz.rs

1use super::prelude::*;
2use crate::units::CSSFloat;
3
4// https://developer.mozilla.org/en-US/docs/Web/CSS/Mozilla_Extensions#media_features
5
6ranged_feature!(
7	#[derive(ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
8	#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
9	#[derive(csskit_derives::FeatureMetadata)]
10	#[feature_metadata(CssAtomSet::_MozDevicePixelRatio)]
11	#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit)]
12#[derive(csskit_derives::NodeWithMetadata)]
13	pub enum MozDevicePixelRatioMediaFeature{CssAtomSet::_MozDevicePixelRatio | CssAtomSet::_MozMinDevicePixelRatio | CssAtomSet::_MozMaxDevicePixelRatio, CSSFloat}
14);
15
16#[derive(Parse, Peek, ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
17#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
18#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit(skip))]
19pub enum MozDeviceOrientationMediaFeatureKeyword {
20	#[atom(CssAtomSet::Portrait)]
21	Portrait(T![Ident]),
22	#[atom(CssAtomSet::Landscape)]
23	Landscape(T![Ident]),
24}
25
26discrete_feature!(
27	#[derive(ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
28	#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
29	#[derive(csskit_derives::FeatureMetadata)]
30	#[feature_metadata(CssAtomSet::_MozDeviceOrientation)]
31	#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit)]
32#[derive(csskit_derives::NodeWithMetadata)]
33	pub enum MozDeviceOrientationMediaFeature{CssAtomSet::_MozDeviceOrientation, MozDeviceOrientationMediaFeatureKeyword}
34);
35
36boolean_feature!(
37	#[derive(ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
38	#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
39	#[derive(csskit_derives::FeatureMetadata)]
40	#[feature_metadata(CssAtomSet::_MozMacGraphiteTheme)]
41	#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit)]
42#[derive(csskit_derives::NodeWithMetadata)]
43	pub enum MozMacGraphiteThemeMediaFeature{CssAtomSet::_MozMacGraphiteTheme}
44);
45
46boolean_feature!(
47	#[derive(ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
48	#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
49	#[derive(csskit_derives::FeatureMetadata)]
50	#[feature_metadata(CssAtomSet::_MozMaemoClassicTheme)]
51	#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit)]
52#[derive(csskit_derives::NodeWithMetadata)]
53	pub enum MozMaemoClassicMediaFeature{CssAtomSet::_MozMaemoClassicTheme}
54);
55
56boolean_feature!(
57	#[derive(ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
58	#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
59	#[derive(csskit_derives::FeatureMetadata)]
60	#[feature_metadata(CssAtomSet::_MozMaemoClassicTheme)]
61	#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit)]
62#[derive(csskit_derives::NodeWithMetadata)]
63	pub enum MozImagesInMenusMediaFeature{CssAtomSet::_MozMaemoClassicTheme}
64);
65
66#[derive(Parse, Peek, ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
67#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
68#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit(skip))]
69pub enum MozOsVersionMediaFeatureKeyword {
70	#[atom(CssAtomSet::WindowsVista)]
71	WindowsVista(T![Ident]),
72	#[atom(CssAtomSet::WindowsXp)]
73	WindowsXp(T![Ident]),
74	#[atom(CssAtomSet::WindowsWin7)]
75	WindowsWin7(T![Ident]),
76	#[atom(CssAtomSet::WindowsWin8)]
77	WindowsWin8(T![Ident]),
78	#[atom(CssAtomSet::WindowsWin10)]
79	WindowsWin10(T![Ident]),
80}
81
82discrete_feature!(
83	#[derive(ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
84	#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
85	#[derive(csskit_derives::FeatureMetadata)]
86	#[feature_metadata(CssAtomSet::_MozOsVersion)]
87	#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit)]
88#[derive(csskit_derives::NodeWithMetadata)]
89	pub enum MozOsVersionMediaFeature{CssAtomSet::_MozOsVersion, MozOsVersionMediaFeatureKeyword}
90);
91
92boolean_feature!(
93	#[derive(ToCursors, ToSpan, SemanticEq, Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)]
94	#[cfg_attr(feature = "serde", derive(serde::Serialize), serde())]
95	#[derive(csskit_derives::FeatureMetadata)]
96	#[feature_metadata(CssAtomSet::_MozTouchEnabled)]
97	#[cfg_attr(feature = "visitable", derive(csskit_derives::Visitable), visit)]
98#[derive(csskit_derives::NodeWithMetadata)]
99	pub enum MozTouchEnabledMediaFeature{CssAtomSet::_MozTouchEnabled}
100);