yass-css 0.1.0-aarch64-linux → 0.3.0-aarch64-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +11 -1
- data/README.md +107 -11
- data/Rakefile +83 -2
- data/codegen/ruby_module_tree.rb +178 -0
- data/codegen/rust_file_set.rb +84 -0
- data/codegen/utils.rb +27 -0
- data/dockerfiles/windows.dockerfile +1 -1
- data/examples/basic_example.rb +32 -0
- data/examples/font_example.rb +19 -0
- data/examples/media_example.rb +31 -0
- data/examples/visitor_example.rb +41 -0
- data/ext/yass/src/.DS_Store +0 -0
- data/ext/yass/src/declarations/.DS_Store +0 -0
- data/lib/yass/3.2/yass.so +0 -0
- data/lib/yass/3.3/yass.so +0 -0
- data/lib/yass/3.4/yass.so +0 -0
- data/lib/yass/4.0/yass.so +0 -0
- data/lib/yass/declarations.rb +7975 -0
- data/lib/yass/general.rb +31 -0
- data/lib/yass/node.rb +9 -0
- data/lib/yass/rules.rb +515 -0
- data/lib/yass/selectors.rb +325 -0
- data/lib/yass/stylesheet.rb +13 -0
- data/lib/yass/version.rb +1 -1
- data/lib/yass/visitor.rb +2463 -0
- data/lib/yass.rb +35 -0
- data/scripts/build_all.sh +44 -0
- data/scripts/detect.rb +39 -0
- data/scripts/wpt.rb +20 -0
- metadata +21 -3
- data/sig/yass.rbs +0 -4
|
@@ -0,0 +1,325 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Yass
|
|
4
|
+
class Selector
|
|
5
|
+
RUBY_METHODS = %i(children kind).freeze
|
|
6
|
+
|
|
7
|
+
include ::Yass::Node
|
|
8
|
+
|
|
9
|
+
def accept(visitor)
|
|
10
|
+
visitor.visit_selector(self)
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def kind
|
|
14
|
+
:selector
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
class AnPlusB
|
|
18
|
+
RUBY_METHODS = %i(a b kind).freeze
|
|
19
|
+
|
|
20
|
+
include ::Yass::Node
|
|
21
|
+
|
|
22
|
+
def accept(visitor)
|
|
23
|
+
visitor.visit_selector_an_plus_b(self)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def kind
|
|
27
|
+
:an_plus_b
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
class AttributeInNoNamespace
|
|
32
|
+
RUBY_METHODS = %i(case_sensitivity kind operator value).freeze
|
|
33
|
+
|
|
34
|
+
include ::Yass::Node
|
|
35
|
+
|
|
36
|
+
def accept(visitor)
|
|
37
|
+
visitor.visit_selector_attribute_in_no_namespace(self)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def kind
|
|
41
|
+
:attribute_in_no_namespace
|
|
42
|
+
end
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
class AttributeInNoNamespaceExists
|
|
46
|
+
RUBY_METHODS = %i(kind).freeze
|
|
47
|
+
|
|
48
|
+
include ::Yass::Node
|
|
49
|
+
|
|
50
|
+
def accept(visitor)
|
|
51
|
+
visitor.visit_selector_attribute_in_no_namespace_exists(self)
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def kind
|
|
55
|
+
:attribute_in_no_namespace_exists
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
class AttributeOther
|
|
60
|
+
RUBY_METHODS = %i(kind namespace).freeze
|
|
61
|
+
|
|
62
|
+
include ::Yass::Node
|
|
63
|
+
|
|
64
|
+
def accept(visitor)
|
|
65
|
+
visitor.visit_selector_attribute_other(self)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def kind
|
|
69
|
+
:attribute_other
|
|
70
|
+
end
|
|
71
|
+
end
|
|
72
|
+
|
|
73
|
+
class Klass
|
|
74
|
+
RUBY_METHODS = %i(kind value).freeze
|
|
75
|
+
|
|
76
|
+
include ::Yass::Node
|
|
77
|
+
|
|
78
|
+
def accept(visitor)
|
|
79
|
+
visitor.visit_selector_klass(self)
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
def kind
|
|
83
|
+
:klass
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
class Combinator
|
|
88
|
+
RUBY_METHODS = %i(ancestor? kind pseudo_element? sibling?).freeze
|
|
89
|
+
|
|
90
|
+
include ::Yass::Node
|
|
91
|
+
|
|
92
|
+
def accept(visitor)
|
|
93
|
+
visitor.visit_selector_combinator(self)
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
def kind
|
|
97
|
+
:combinator
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
|
|
101
|
+
class DefaultNamespace
|
|
102
|
+
RUBY_METHODS = %i(kind url).freeze
|
|
103
|
+
|
|
104
|
+
include ::Yass::Node
|
|
105
|
+
|
|
106
|
+
def accept(visitor)
|
|
107
|
+
visitor.visit_selector_default_namespace(self)
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
def kind
|
|
111
|
+
:default_namespace
|
|
112
|
+
end
|
|
113
|
+
end
|
|
114
|
+
|
|
115
|
+
class Has
|
|
116
|
+
RUBY_METHODS = %i(kind relative_selectors).freeze
|
|
117
|
+
|
|
118
|
+
include ::Yass::Node
|
|
119
|
+
|
|
120
|
+
def accept(visitor)
|
|
121
|
+
visitor.visit_selector_has(self)
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
def kind
|
|
125
|
+
:has
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
class Host
|
|
130
|
+
RUBY_METHODS = %i(kind selector).freeze
|
|
131
|
+
|
|
132
|
+
include ::Yass::Node
|
|
133
|
+
|
|
134
|
+
def accept(visitor)
|
|
135
|
+
visitor.visit_selector_host(self)
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
def kind
|
|
139
|
+
:host
|
|
140
|
+
end
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
class Id
|
|
144
|
+
RUBY_METHODS = %i(kind value).freeze
|
|
145
|
+
|
|
146
|
+
include ::Yass::Node
|
|
147
|
+
|
|
148
|
+
def accept(visitor)
|
|
149
|
+
visitor.visit_selector_id(self)
|
|
150
|
+
end
|
|
151
|
+
|
|
152
|
+
def kind
|
|
153
|
+
:id
|
|
154
|
+
end
|
|
155
|
+
end
|
|
156
|
+
|
|
157
|
+
class Is
|
|
158
|
+
RUBY_METHODS = %i(kind selectors).freeze
|
|
159
|
+
|
|
160
|
+
include ::Yass::Node
|
|
161
|
+
|
|
162
|
+
def accept(visitor)
|
|
163
|
+
visitor.visit_selector_is(self)
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
def kind
|
|
167
|
+
:is
|
|
168
|
+
end
|
|
169
|
+
end
|
|
170
|
+
|
|
171
|
+
class LocalName
|
|
172
|
+
RUBY_METHODS = %i(kind value).freeze
|
|
173
|
+
|
|
174
|
+
include ::Yass::Node
|
|
175
|
+
|
|
176
|
+
def accept(visitor)
|
|
177
|
+
visitor.visit_selector_local_name(self)
|
|
178
|
+
end
|
|
179
|
+
|
|
180
|
+
def kind
|
|
181
|
+
:local_name
|
|
182
|
+
end
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
class Namespace
|
|
186
|
+
RUBY_METHODS = %i(kind prefix url).freeze
|
|
187
|
+
|
|
188
|
+
include ::Yass::Node
|
|
189
|
+
|
|
190
|
+
def accept(visitor)
|
|
191
|
+
visitor.visit_selector_namespace(self)
|
|
192
|
+
end
|
|
193
|
+
|
|
194
|
+
def kind
|
|
195
|
+
:namespace
|
|
196
|
+
end
|
|
197
|
+
end
|
|
198
|
+
|
|
199
|
+
class Negation
|
|
200
|
+
RUBY_METHODS = %i(kind selectors).freeze
|
|
201
|
+
|
|
202
|
+
include ::Yass::Node
|
|
203
|
+
|
|
204
|
+
def accept(visitor)
|
|
205
|
+
visitor.visit_selector_negation(self)
|
|
206
|
+
end
|
|
207
|
+
|
|
208
|
+
def kind
|
|
209
|
+
:negation
|
|
210
|
+
end
|
|
211
|
+
end
|
|
212
|
+
|
|
213
|
+
class NonTsPseudoClass
|
|
214
|
+
RUBY_METHODS = %i(kind type value).freeze
|
|
215
|
+
|
|
216
|
+
include ::Yass::Node
|
|
217
|
+
|
|
218
|
+
def accept(visitor)
|
|
219
|
+
visitor.visit_selector_non_ts_pseudo_class(self)
|
|
220
|
+
end
|
|
221
|
+
|
|
222
|
+
def kind
|
|
223
|
+
:non_ts_pseudo_class
|
|
224
|
+
end
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
class Nth
|
|
228
|
+
RUBY_METHODS = %i(an_plus_b function? kind type).freeze
|
|
229
|
+
|
|
230
|
+
include ::Yass::Node
|
|
231
|
+
|
|
232
|
+
def accept(visitor)
|
|
233
|
+
visitor.visit_selector_nth(self)
|
|
234
|
+
end
|
|
235
|
+
|
|
236
|
+
def kind
|
|
237
|
+
:nth
|
|
238
|
+
end
|
|
239
|
+
end
|
|
240
|
+
|
|
241
|
+
class NthOf
|
|
242
|
+
RUBY_METHODS = %i(kind nth selectors).freeze
|
|
243
|
+
|
|
244
|
+
include ::Yass::Node
|
|
245
|
+
|
|
246
|
+
def accept(visitor)
|
|
247
|
+
visitor.visit_selector_nth_of(self)
|
|
248
|
+
end
|
|
249
|
+
|
|
250
|
+
def kind
|
|
251
|
+
:nth_of
|
|
252
|
+
end
|
|
253
|
+
end
|
|
254
|
+
|
|
255
|
+
class Part
|
|
256
|
+
RUBY_METHODS = %i(items kind).freeze
|
|
257
|
+
|
|
258
|
+
include ::Yass::Node
|
|
259
|
+
|
|
260
|
+
def accept(visitor)
|
|
261
|
+
visitor.visit_selector_part(self)
|
|
262
|
+
end
|
|
263
|
+
|
|
264
|
+
def kind
|
|
265
|
+
:part
|
|
266
|
+
end
|
|
267
|
+
end
|
|
268
|
+
|
|
269
|
+
class Slotted
|
|
270
|
+
RUBY_METHODS = %i(kind selector).freeze
|
|
271
|
+
|
|
272
|
+
include ::Yass::Node
|
|
273
|
+
|
|
274
|
+
def accept(visitor)
|
|
275
|
+
visitor.visit_selector_slotted(self)
|
|
276
|
+
end
|
|
277
|
+
|
|
278
|
+
def kind
|
|
279
|
+
:slotted
|
|
280
|
+
end
|
|
281
|
+
end
|
|
282
|
+
|
|
283
|
+
class SpecificNamespaceConstraint
|
|
284
|
+
RUBY_METHODS = %i(kind prefix url).freeze
|
|
285
|
+
|
|
286
|
+
include ::Yass::Node
|
|
287
|
+
|
|
288
|
+
def accept(visitor)
|
|
289
|
+
visitor.visit_selector_specific_namespace_constraint(self)
|
|
290
|
+
end
|
|
291
|
+
|
|
292
|
+
def kind
|
|
293
|
+
:specific_namespace_constraint
|
|
294
|
+
end
|
|
295
|
+
end
|
|
296
|
+
|
|
297
|
+
class Where
|
|
298
|
+
RUBY_METHODS = %i(kind selectors).freeze
|
|
299
|
+
|
|
300
|
+
include ::Yass::Node
|
|
301
|
+
|
|
302
|
+
def accept(visitor)
|
|
303
|
+
visitor.visit_selector_where(self)
|
|
304
|
+
end
|
|
305
|
+
|
|
306
|
+
def kind
|
|
307
|
+
:where
|
|
308
|
+
end
|
|
309
|
+
end
|
|
310
|
+
end
|
|
311
|
+
|
|
312
|
+
class RelativeSelector
|
|
313
|
+
RUBY_METHODS = %i(kind match_hint selector).freeze
|
|
314
|
+
|
|
315
|
+
include ::Yass::Node
|
|
316
|
+
|
|
317
|
+
def accept(visitor)
|
|
318
|
+
visitor.visit_relative_selector(self)
|
|
319
|
+
end
|
|
320
|
+
|
|
321
|
+
def kind
|
|
322
|
+
:relative_selector
|
|
323
|
+
end
|
|
324
|
+
end
|
|
325
|
+
end
|
data/lib/yass/version.rb
CHANGED