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