xrb 0.1 → 0.3.0

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.
Files changed (63) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +1 -0
  3. data/bake/xrb/entities.rb +60 -0
  4. data/bake/xrb/parsers.rb +66 -0
  5. data/ext/Makefile +270 -0
  6. data/ext/XRB_Extension.bundle +0 -0
  7. data/ext/escape.o +0 -0
  8. data/ext/extconf.h +5 -0
  9. data/ext/extconf.rb +21 -0
  10. data/ext/markup.o +0 -0
  11. data/ext/mkmf.log +122 -0
  12. data/ext/query.o +0 -0
  13. data/ext/tag.o +0 -0
  14. data/ext/template.o +0 -0
  15. data/ext/xrb/escape.c +152 -0
  16. data/ext/xrb/escape.h +15 -0
  17. data/ext/xrb/markup.c +1949 -0
  18. data/ext/xrb/markup.h +6 -0
  19. data/ext/xrb/markup.rl +226 -0
  20. data/ext/xrb/query.c +619 -0
  21. data/ext/xrb/query.h +6 -0
  22. data/ext/xrb/query.rl +82 -0
  23. data/ext/xrb/tag.c +204 -0
  24. data/ext/xrb/tag.h +21 -0
  25. data/ext/xrb/template.c +1114 -0
  26. data/ext/xrb/template.h +6 -0
  27. data/ext/xrb/template.rl +77 -0
  28. data/ext/xrb/xrb.c +72 -0
  29. data/ext/xrb/xrb.h +132 -0
  30. data/ext/xrb.o +0 -0
  31. data/lib/xrb/buffer.rb +103 -0
  32. data/lib/xrb/builder.rb +229 -0
  33. data/lib/xrb/entities.rb +2137 -0
  34. data/lib/xrb/entities.xrb +15 -0
  35. data/lib/xrb/error.rb +81 -0
  36. data/lib/xrb/fallback/markup.rb +1657 -0
  37. data/lib/xrb/fallback/markup.rl +227 -0
  38. data/lib/xrb/fallback/query.rb +548 -0
  39. data/lib/xrb/fallback/query.rl +88 -0
  40. data/lib/xrb/fallback/template.rb +829 -0
  41. data/lib/xrb/fallback/template.rl +80 -0
  42. data/lib/xrb/markup.rb +56 -0
  43. data/lib/xrb/native.rb +15 -0
  44. data/lib/xrb/parsers.rb +16 -0
  45. data/lib/xrb/query.rb +80 -0
  46. data/lib/xrb/reference.rb +108 -0
  47. data/lib/xrb/strings.rb +47 -0
  48. data/lib/xrb/tag.rb +115 -0
  49. data/lib/xrb/template.rb +128 -0
  50. data/lib/xrb/uri.rb +100 -0
  51. data/lib/xrb/version.rb +8 -0
  52. data/lib/xrb.rb +11 -0
  53. data/license.md +23 -0
  54. data/readme.md +34 -0
  55. data.tar.gz.sig +0 -0
  56. metadata +118 -58
  57. metadata.gz.sig +2 -0
  58. data/README +0 -60
  59. data/app/helpers/ui_helper.rb +0 -80
  60. data/app/models/xrb/element.rb +0 -9
  61. data/lib/xrb/engine.rb +0 -4
  62. data/rails/init.rb +0 -1
  63. data/xrb.gemspec +0 -12
@@ -0,0 +1,1657 @@
1
+
2
+ # line 1 "lib/xrb/fallback/markup.rl"
3
+ # Released under the MIT License.
4
+ # Copyright, 2016-2024, by Samuel Williams.
5
+
6
+
7
+ # line 190 "lib/xrb/fallback/markup.rl"
8
+
9
+
10
+ require_relative '../error'
11
+
12
+ module XRB
13
+ module Fallback
14
+
15
+ # line 16 "lib/xrb/fallback/markup.rb"
16
+ class << self
17
+ attr_accessor :_markup_trans_keys
18
+ private :_markup_trans_keys, :_markup_trans_keys=
19
+ end
20
+ self._markup_trans_keys = [
21
+ 0, 0, 0, 127, 0, 127,
22
+ 0, 127, 0, 127, 62,
23
+ 62, 34, 39, 34, 60,
24
+ 34, 60, 9, 62, 34, 60,
25
+ 9, 62, 38, 60, 38,
26
+ 60, 38, 60, 45, 91,
27
+ 45, 45, 45, 45, 45, 45,
28
+ 45, 62, 79, 79, 67,
29
+ 67, 84, 84, 89, 89,
30
+ 80, 80, 69, 69, 62, 62,
31
+ 67, 67, 68, 68, 65,
32
+ 65, 84, 84, 65, 65,
33
+ 91, 91, 93, 93, 93, 93,
34
+ 62, 93, 0, 127, 0,
35
+ 127, 0, 127, 0, 127,
36
+ 63, 63, 62, 63, 35, 122,
37
+ 48, 120, 48, 59, 48,
38
+ 102, 48, 102, 48, 122,
39
+ 38, 60, 38, 60, 38, 60,
40
+ 38, 60, 38, 60, 38,
41
+ 60, 38, 60, 38, 60,
42
+ 38, 60, 0, 0, 0
43
+ ]
44
+
45
+ class << self
46
+ attr_accessor :_markup_key_spans
47
+ private :_markup_key_spans, :_markup_key_spans=
48
+ end
49
+ self._markup_key_spans = [
50
+ 0, 128, 128, 128, 128, 1, 6, 27,
51
+ 27, 54, 27, 54, 23, 23, 23, 47,
52
+ 1, 1, 1, 18, 1, 1, 1, 1,
53
+ 1, 1, 1, 1, 1, 1, 1, 1,
54
+ 1, 1, 1, 32, 128, 128, 128, 128,
55
+ 1, 2, 88, 73, 12, 55, 55, 75,
56
+ 23, 23, 23, 23, 23, 23, 23, 23,
57
+ 23, 0
58
+ ]
59
+
60
+ class << self
61
+ attr_accessor :_markup_index_offsets
62
+ private :_markup_index_offsets, :_markup_index_offsets=
63
+ end
64
+ self._markup_index_offsets = [
65
+ 0, 0, 129, 258, 387, 516, 518, 525,
66
+ 553, 581, 636, 664, 719, 743, 767, 791,
67
+ 839, 841, 843, 845, 864, 866, 868, 870,
68
+ 872, 874, 876, 878, 880, 882, 884, 886,
69
+ 888, 890, 892, 894, 927, 1056, 1185, 1314,
70
+ 1443, 1445, 1448, 1537, 1611, 1624, 1680, 1736,
71
+ 1812, 1836, 1860, 1884, 1908, 1932, 1956, 1980,
72
+ 2004, 2028
73
+ ]
74
+
75
+ class << self
76
+ attr_accessor :_markup_indicies
77
+ private :_markup_indicies, :_markup_indicies=
78
+ end
79
+ self._markup_indicies = [
80
+ 1, 1, 1, 1, 1, 1, 1, 1,
81
+ 1, 1, 1, 1, 1, 1, 1, 1,
82
+ 1, 1, 1, 1, 1, 1, 1, 1,
83
+ 1, 1, 1, 1, 1, 1, 1, 1,
84
+ 1, 2, 1, 1, 1, 1, 1, 1,
85
+ 1, 1, 1, 1, 1, 0, 0, 3,
86
+ 0, 0, 0, 0, 0, 0, 0, 0,
87
+ 0, 0, 0, 1, 1, 1, 1, 4,
88
+ 1, 0, 0, 0, 0, 0, 0, 0,
89
+ 0, 0, 0, 0, 0, 0, 0, 0,
90
+ 0, 0, 0, 0, 0, 0, 0, 0,
91
+ 0, 0, 0, 1, 1, 1, 1, 0,
92
+ 1, 0, 0, 0, 0, 0, 0, 0,
93
+ 0, 0, 0, 0, 0, 0, 0, 0,
94
+ 0, 0, 0, 0, 0, 0, 0, 0,
95
+ 0, 0, 0, 1, 1, 1, 1, 1,
96
+ 0, 1, 1, 1, 1, 1, 1, 1,
97
+ 1, 1, 6, 6, 6, 6, 6, 1,
98
+ 1, 1, 1, 1, 1, 1, 1, 1,
99
+ 1, 1, 1, 1, 1, 1, 1, 1,
100
+ 1, 6, 1, 1, 1, 1, 1, 1,
101
+ 1, 1, 1, 1, 1, 1, 5, 5,
102
+ 7, 5, 5, 5, 5, 5, 5, 5,
103
+ 5, 5, 5, 5, 1, 1, 1, 8,
104
+ 1, 1, 5, 5, 5, 5, 5, 5,
105
+ 5, 5, 5, 5, 5, 5, 5, 5,
106
+ 5, 5, 5, 5, 5, 5, 5, 5,
107
+ 5, 5, 5, 5, 1, 1, 1, 1,
108
+ 5, 1, 5, 5, 5, 5, 5, 5,
109
+ 5, 5, 5, 5, 5, 5, 5, 5,
110
+ 5, 5, 5, 5, 5, 5, 5, 5,
111
+ 5, 5, 5, 5, 1, 1, 1, 1,
112
+ 1, 5, 1, 1, 1, 1, 1, 1,
113
+ 1, 1, 1, 10, 10, 10, 10, 10,
114
+ 1, 1, 1, 1, 1, 1, 1, 1,
115
+ 1, 1, 1, 1, 1, 1, 1, 1,
116
+ 1, 1, 10, 1, 1, 1, 1, 1,
117
+ 1, 1, 1, 1, 1, 1, 1, 9,
118
+ 9, 11, 9, 9, 9, 9, 9, 9,
119
+ 9, 9, 9, 9, 9, 1, 1, 1,
120
+ 12, 1, 1, 9, 9, 9, 9, 9,
121
+ 9, 9, 9, 9, 9, 9, 9, 9,
122
+ 9, 9, 9, 9, 9, 9, 9, 9,
123
+ 9, 9, 9, 9, 9, 1, 1, 1,
124
+ 1, 9, 1, 9, 9, 9, 9, 9,
125
+ 9, 9, 9, 9, 9, 9, 9, 9,
126
+ 9, 9, 9, 9, 9, 9, 9, 9,
127
+ 9, 9, 9, 9, 9, 1, 1, 1,
128
+ 1, 1, 9, 1, 1, 1, 1, 1,
129
+ 1, 1, 1, 1, 14, 14, 14, 14,
130
+ 14, 1, 1, 1, 1, 1, 1, 1,
131
+ 1, 1, 1, 1, 1, 1, 1, 1,
132
+ 1, 1, 1, 14, 1, 1, 1, 1,
133
+ 1, 1, 1, 1, 1, 1, 1, 1,
134
+ 13, 13, 15, 13, 13, 13, 13, 13,
135
+ 13, 13, 13, 13, 13, 13, 1, 1,
136
+ 16, 17, 1, 1, 13, 13, 13, 13,
137
+ 13, 13, 13, 13, 13, 13, 13, 13,
138
+ 13, 13, 13, 13, 13, 13, 13, 13,
139
+ 13, 13, 13, 13, 13, 13, 1, 1,
140
+ 1, 1, 13, 1, 13, 13, 13, 13,
141
+ 13, 13, 13, 13, 13, 13, 13, 13,
142
+ 13, 13, 13, 13, 13, 13, 13, 13,
143
+ 13, 13, 13, 13, 13, 13, 1, 1,
144
+ 1, 1, 1, 13, 12, 1, 18, 1,
145
+ 1, 1, 1, 19, 1, 21, 20, 20,
146
+ 20, 22, 20, 20, 20, 20, 20, 20,
147
+ 20, 20, 20, 20, 20, 20, 20, 20,
148
+ 20, 20, 20, 20, 20, 20, 20, 1,
149
+ 20, 24, 23, 23, 23, 25, 23, 23,
150
+ 23, 23, 23, 23, 23, 23, 23, 23,
151
+ 23, 23, 23, 23, 23, 23, 23, 23,
152
+ 23, 23, 23, 1, 23, 26, 26, 26,
153
+ 26, 26, 1, 1, 1, 1, 1, 1,
154
+ 1, 1, 1, 1, 1, 1, 1, 1,
155
+ 1, 1, 1, 1, 26, 1, 1, 1,
156
+ 1, 1, 1, 1, 1, 1, 1, 1,
157
+ 1, 1, 1, 27, 1, 1, 1, 1,
158
+ 1, 1, 1, 1, 1, 1, 1, 1,
159
+ 1, 1, 28, 1, 30, 29, 29, 29,
160
+ 31, 29, 29, 29, 29, 29, 29, 29,
161
+ 29, 29, 29, 29, 29, 29, 29, 29,
162
+ 29, 29, 29, 29, 29, 29, 1, 29,
163
+ 32, 32, 32, 32, 32, 1, 1, 1,
164
+ 1, 1, 1, 1, 1, 1, 1, 1,
165
+ 1, 1, 1, 1, 1, 1, 1, 32,
166
+ 1, 1, 1, 1, 1, 1, 1, 1,
167
+ 1, 1, 1, 1, 1, 1, 33, 1,
168
+ 1, 1, 1, 1, 1, 1, 1, 1,
169
+ 1, 1, 1, 1, 1, 34, 1, 36,
170
+ 21, 35, 35, 35, 35, 35, 35, 35,
171
+ 35, 35, 35, 35, 35, 35, 35, 35,
172
+ 35, 35, 35, 35, 35, 1, 35, 38,
173
+ 24, 37, 37, 37, 37, 37, 37, 37,
174
+ 37, 37, 37, 37, 37, 37, 37, 37,
175
+ 37, 37, 37, 37, 37, 1, 37, 40,
176
+ 30, 39, 39, 39, 39, 39, 39, 39,
177
+ 39, 39, 39, 39, 39, 39, 39, 39,
178
+ 39, 39, 39, 39, 39, 1, 39, 41,
179
+ 42, 42, 42, 42, 42, 42, 42, 42,
180
+ 42, 42, 42, 42, 42, 42, 42, 42,
181
+ 42, 42, 42, 42, 42, 42, 43, 42,
182
+ 42, 42, 42, 42, 42, 42, 42, 42,
183
+ 42, 42, 42, 42, 42, 42, 42, 42,
184
+ 42, 42, 42, 42, 42, 44, 42, 45,
185
+ 42, 46, 45, 47, 45, 47, 45, 45,
186
+ 45, 45, 45, 45, 45, 45, 45, 45,
187
+ 45, 45, 45, 45, 45, 45, 48, 45,
188
+ 49, 42, 50, 42, 51, 42, 52, 42,
189
+ 53, 42, 54, 42, 55, 54, 56, 42,
190
+ 57, 42, 58, 42, 59, 42, 60, 42,
191
+ 61, 42, 62, 61, 63, 61, 64, 61,
192
+ 61, 61, 61, 61, 61, 61, 61, 61,
193
+ 61, 61, 61, 61, 61, 61, 61, 61,
194
+ 61, 61, 61, 61, 61, 61, 61, 61,
195
+ 61, 61, 61, 61, 61, 63, 61, 1,
196
+ 1, 1, 1, 1, 1, 1, 1, 1,
197
+ 1, 1, 1, 1, 1, 1, 1, 1,
198
+ 1, 1, 1, 1, 1, 1, 1, 1,
199
+ 1, 1, 1, 1, 1, 1, 1, 1,
200
+ 1, 1, 1, 1, 1, 1, 1, 1,
201
+ 1, 1, 1, 1, 65, 65, 1, 65,
202
+ 65, 65, 65, 65, 65, 65, 65, 65,
203
+ 65, 65, 1, 1, 1, 1, 1, 1,
204
+ 65, 65, 65, 65, 65, 65, 65, 65,
205
+ 65, 65, 65, 65, 65, 65, 65, 65,
206
+ 65, 65, 65, 65, 65, 65, 65, 65,
207
+ 65, 65, 1, 1, 1, 1, 65, 1,
208
+ 65, 65, 65, 65, 65, 65, 65, 65,
209
+ 65, 65, 65, 65, 65, 65, 65, 65,
210
+ 65, 65, 65, 65, 65, 65, 65, 65,
211
+ 65, 65, 1, 1, 1, 1, 1, 65,
212
+ 1, 1, 1, 1, 1, 1, 1, 1,
213
+ 1, 1, 1, 1, 1, 1, 1, 1,
214
+ 1, 1, 1, 1, 1, 1, 1, 1,
215
+ 1, 1, 1, 1, 1, 1, 1, 1,
216
+ 1, 1, 1, 1, 1, 1, 1, 1,
217
+ 1, 1, 1, 1, 1, 66, 66, 1,
218
+ 66, 66, 66, 66, 66, 66, 66, 66,
219
+ 66, 66, 66, 1, 1, 1, 67, 1,
220
+ 1, 66, 66, 66, 66, 66, 66, 66,
221
+ 66, 66, 66, 66, 66, 66, 66, 66,
222
+ 66, 66, 66, 66, 66, 66, 66, 66,
223
+ 66, 66, 66, 1, 1, 1, 1, 66,
224
+ 1, 66, 66, 66, 66, 66, 66, 66,
225
+ 66, 66, 66, 66, 66, 66, 66, 66,
226
+ 66, 66, 66, 66, 66, 66, 66, 66,
227
+ 66, 66, 66, 1, 1, 1, 1, 1,
228
+ 66, 69, 69, 69, 69, 69, 69, 69,
229
+ 69, 69, 69, 69, 69, 69, 69, 69,
230
+ 69, 69, 69, 69, 69, 69, 69, 69,
231
+ 69, 69, 69, 69, 69, 69, 69, 69,
232
+ 69, 69, 69, 69, 69, 69, 69, 69,
233
+ 69, 69, 69, 69, 69, 69, 68, 68,
234
+ 69, 68, 68, 68, 68, 68, 68, 68,
235
+ 68, 68, 68, 68, 69, 69, 69, 69,
236
+ 69, 69, 68, 68, 68, 68, 68, 68,
237
+ 68, 68, 68, 68, 68, 68, 68, 68,
238
+ 68, 68, 68, 68, 68, 68, 68, 68,
239
+ 68, 68, 68, 68, 69, 69, 69, 69,
240
+ 68, 69, 68, 68, 68, 68, 68, 68,
241
+ 68, 68, 68, 68, 68, 68, 68, 68,
242
+ 68, 68, 68, 68, 68, 68, 68, 68,
243
+ 68, 68, 68, 68, 69, 69, 69, 69,
244
+ 69, 68, 69, 69, 69, 69, 69, 69,
245
+ 69, 69, 69, 71, 71, 71, 71, 71,
246
+ 69, 69, 69, 69, 69, 69, 69, 69,
247
+ 69, 69, 69, 69, 69, 69, 69, 69,
248
+ 69, 69, 71, 69, 69, 69, 69, 69,
249
+ 69, 69, 69, 69, 69, 69, 69, 70,
250
+ 70, 69, 70, 70, 70, 70, 70, 70,
251
+ 70, 70, 70, 70, 70, 69, 69, 69,
252
+ 69, 69, 69, 70, 70, 70, 70, 70,
253
+ 70, 70, 70, 70, 70, 70, 70, 70,
254
+ 70, 70, 70, 70, 70, 70, 70, 70,
255
+ 70, 70, 70, 70, 70, 69, 69, 69,
256
+ 69, 70, 69, 70, 70, 70, 70, 70,
257
+ 70, 70, 70, 70, 70, 70, 70, 70,
258
+ 70, 70, 70, 70, 70, 70, 70, 70,
259
+ 70, 70, 70, 70, 70, 69, 69, 69,
260
+ 69, 69, 70, 73, 72, 74, 73, 72,
261
+ 76, 75, 75, 75, 75, 75, 75, 75,
262
+ 75, 75, 75, 75, 75, 77, 77, 77,
263
+ 77, 77, 77, 77, 77, 77, 77, 75,
264
+ 75, 75, 75, 75, 75, 75, 77, 77,
265
+ 77, 77, 77, 77, 77, 77, 77, 77,
266
+ 77, 77, 77, 77, 77, 77, 77, 77,
267
+ 77, 77, 77, 77, 77, 77, 77, 77,
268
+ 75, 75, 75, 75, 75, 75, 77, 77,
269
+ 77, 77, 77, 77, 77, 77, 77, 77,
270
+ 77, 77, 77, 77, 77, 77, 77, 77,
271
+ 77, 77, 77, 77, 77, 77, 77, 77,
272
+ 75, 78, 78, 78, 78, 78, 78, 78,
273
+ 78, 78, 78, 75, 75, 75, 75, 75,
274
+ 75, 75, 75, 75, 75, 75, 75, 75,
275
+ 75, 75, 75, 75, 75, 75, 75, 75,
276
+ 75, 75, 75, 75, 75, 75, 75, 75,
277
+ 75, 75, 75, 75, 75, 75, 75, 75,
278
+ 75, 75, 75, 75, 75, 75, 75, 75,
279
+ 75, 75, 75, 75, 75, 75, 75, 75,
280
+ 75, 75, 75, 75, 75, 75, 75, 75,
281
+ 75, 79, 75, 80, 80, 80, 80, 80,
282
+ 80, 80, 80, 80, 80, 75, 81, 75,
283
+ 82, 82, 82, 82, 82, 82, 82, 82,
284
+ 82, 82, 75, 75, 75, 75, 75, 75,
285
+ 75, 82, 82, 82, 82, 82, 82, 75,
286
+ 75, 75, 75, 75, 75, 75, 75, 75,
287
+ 75, 75, 75, 75, 75, 75, 75, 75,
288
+ 75, 75, 75, 75, 75, 75, 75, 75,
289
+ 75, 82, 82, 82, 82, 82, 82, 75,
290
+ 83, 83, 83, 83, 83, 83, 83, 83,
291
+ 83, 83, 75, 84, 75, 75, 75, 75,
292
+ 75, 83, 83, 83, 83, 83, 83, 75,
293
+ 75, 75, 75, 75, 75, 75, 75, 75,
294
+ 75, 75, 75, 75, 75, 75, 75, 75,
295
+ 75, 75, 75, 75, 75, 75, 75, 75,
296
+ 75, 83, 83, 83, 83, 83, 83, 75,
297
+ 85, 85, 85, 85, 85, 85, 85, 85,
298
+ 85, 85, 75, 86, 75, 75, 75, 75,
299
+ 75, 85, 85, 85, 85, 85, 85, 85,
300
+ 85, 85, 85, 85, 85, 85, 85, 85,
301
+ 85, 85, 85, 85, 85, 85, 85, 85,
302
+ 85, 85, 85, 75, 75, 75, 75, 75,
303
+ 75, 85, 85, 85, 85, 85, 85, 85,
304
+ 85, 85, 85, 85, 85, 85, 85, 85,
305
+ 85, 85, 85, 85, 85, 85, 85, 85,
306
+ 85, 85, 85, 75, 88, 87, 87, 87,
307
+ 87, 87, 87, 87, 87, 87, 87, 87,
308
+ 87, 87, 87, 87, 87, 87, 87, 87,
309
+ 87, 87, 89, 87, 91, 90, 90, 90,
310
+ 90, 90, 90, 90, 90, 90, 90, 90,
311
+ 90, 90, 90, 90, 90, 90, 90, 90,
312
+ 90, 90, 92, 90, 94, 93, 93, 93,
313
+ 93, 93, 93, 93, 93, 93, 93, 93,
314
+ 93, 93, 93, 93, 93, 93, 93, 93,
315
+ 93, 93, 95, 93, 97, 96, 96, 96,
316
+ 96, 96, 96, 96, 96, 96, 96, 96,
317
+ 96, 96, 96, 96, 96, 96, 96, 96,
318
+ 96, 96, 98, 96, 100, 99, 99, 99,
319
+ 99, 99, 99, 99, 99, 99, 99, 99,
320
+ 99, 99, 99, 99, 99, 99, 99, 99,
321
+ 99, 99, 101, 99, 103, 102, 102, 102,
322
+ 102, 102, 102, 102, 102, 102, 102, 102,
323
+ 102, 102, 102, 102, 102, 102, 102, 102,
324
+ 102, 102, 104, 102, 106, 105, 105, 105,
325
+ 105, 105, 105, 105, 105, 105, 105, 105,
326
+ 105, 105, 105, 105, 105, 105, 105, 105,
327
+ 105, 105, 107, 105, 109, 108, 108, 108,
328
+ 108, 108, 108, 108, 108, 108, 108, 108,
329
+ 108, 108, 108, 108, 108, 108, 108, 108,
330
+ 108, 108, 110, 108, 112, 111, 111, 111,
331
+ 111, 111, 111, 111, 111, 111, 111, 111,
332
+ 111, 111, 111, 111, 111, 111, 111, 111,
333
+ 111, 111, 113, 111, 42, 0
334
+ ]
335
+
336
+ class << self
337
+ attr_accessor :_markup_trans_targs
338
+ private :_markup_trans_targs, :_markup_trans_targs=
339
+ end
340
+ self._markup_trans_targs = [
341
+ 2, 0, 15, 36, 38, 2, 3, 5,
342
+ 51, 4, 3, 5, 51, 4, 3, 5,
343
+ 6, 51, 7, 12, 8, 11, 10, 8,
344
+ 9, 10, 3, 5, 51, 8, 9, 10,
345
+ 3, 5, 51, 13, 14, 13, 14, 13,
346
+ 14, 16, 0, 20, 27, 17, 18, 19,
347
+ 52, 21, 22, 23, 24, 25, 26, 53,
348
+ 28, 29, 30, 31, 32, 33, 34, 35,
349
+ 54, 37, 37, 55, 39, 0, 39, 40,
350
+ 40, 41, 56, 0, 43, 47, 44, 45,
351
+ 44, 57, 46, 46, 57, 47, 57, 49,
352
+ 50, 1, 49, 50, 1, 49, 50, 1,
353
+ 49, 50, 1, 49, 50, 1, 49, 50,
354
+ 1, 49, 50, 1, 49, 50, 1, 49,
355
+ 50, 1
356
+ ]
357
+
358
+ class << self
359
+ attr_accessor :_markup_trans_actions
360
+ private :_markup_trans_actions, :_markup_trans_actions=
361
+ end
362
+ self._markup_trans_actions = [
363
+ 2, 1, 0, 0, 0, 0, 3, 4,
364
+ 3, 5, 0, 6, 0, 0, 7, 8,
365
+ 9, 7, 0, 0, 10, 0, 11, 0,
366
+ 12, 13, 14, 15, 14, 16, 17, 18,
367
+ 19, 20, 19, 10, 11, 0, 13, 16,
368
+ 18, 0, 0, 0, 0, 0, 0, 0,
369
+ 0, 0, 0, 0, 0, 0, 0, 0,
370
+ 0, 0, 0, 0, 0, 0, 0, 0,
371
+ 0, 2, 0, 9, 2, 24, 0, 25,
372
+ 0, 26, 0, 27, 0, 28, 28, 0,
373
+ 0, 29, 28, 0, 30, 0, 31, 32,
374
+ 33, 34, 0, 13, 36, 16, 18, 38,
375
+ 40, 41, 42, 44, 45, 46, 48, 49,
376
+ 50, 52, 53, 54, 56, 57, 58, 60,
377
+ 61, 62
378
+ ]
379
+
380
+ class << self
381
+ attr_accessor :_markup_eof_actions
382
+ private :_markup_eof_actions, :_markup_eof_actions=
383
+ end
384
+ self._markup_eof_actions = [
385
+ 0, 1, 1, 1, 1, 1, 1, 1,
386
+ 1, 1, 1, 1, 1, 1, 1, 0,
387
+ 0, 21, 21, 21, 0, 0, 0, 0,
388
+ 0, 0, 22, 0, 0, 0, 0, 0,
389
+ 0, 23, 23, 23, 1, 1, 24, 24,
390
+ 24, 24, 27, 27, 27, 27, 27, 27,
391
+ 0, 35, 37, 39, 43, 47, 51, 55,
392
+ 59, 0
393
+ ]
394
+
395
+ class << self
396
+ attr_accessor :markup_start
397
+ end
398
+ self.markup_start = 48;
399
+ class << self
400
+ attr_accessor :markup_first_final
401
+ end
402
+ self.markup_first_final = 48;
403
+ class << self
404
+ attr_accessor :markup_error
405
+ end
406
+ self.markup_error = 0;
407
+
408
+ class << self
409
+ attr_accessor :markup_en_parse_entity
410
+ end
411
+ self.markup_en_parse_entity = 42;
412
+ class << self
413
+ attr_accessor :markup_en_main
414
+ end
415
+ self.markup_en_main = 48;
416
+
417
+
418
+ # line 197 "lib/xrb/fallback/markup.rl"
419
+
420
+ def self.parse_markup(buffer, delegate, entities)
421
+ data = buffer.read
422
+ bytes = data.bytes
423
+
424
+ p = 0
425
+ # Must set pe here or it gets incorrectly set to data.length
426
+ pe = eof = data.bytesize
427
+ stack = []
428
+
429
+ pcdata = nil
430
+ characters_begin = characters_end = nil
431
+ entity_begin = entity_end = nil
432
+ identifier_begin = identifier_end = nil
433
+ doctype_begin = doctype_end = nil
434
+ comment_begin = comment_end = nil
435
+ instruction_begin = instruction_end = nil
436
+ cdata_begin = cdata_end = nil
437
+ has_entities = has_value = false
438
+
439
+
440
+ # line 441 "lib/xrb/fallback/markup.rb"
441
+ begin
442
+ p ||= 0
443
+ pe ||= data.length
444
+ cs = markup_start
445
+ top = 0
446
+ end
447
+
448
+ # line 218 "lib/xrb/fallback/markup.rl"
449
+
450
+ # line 451 "lib/xrb/fallback/markup.rb"
451
+ begin
452
+ testEof = false
453
+ _slen, _trans, _keys, _inds, _acts, _nacts = nil
454
+ _goto_level = 0
455
+ _resume = 10
456
+ _eof_trans = 15
457
+ _again = 20
458
+ _test_eof = 30
459
+ _out = 40
460
+ while true
461
+ if _goto_level <= 0
462
+ if p == pe
463
+ _goto_level = _test_eof
464
+ next
465
+ end
466
+ if cs == 0
467
+ _goto_level = _out
468
+ next
469
+ end
470
+ end
471
+ if _goto_level <= _resume
472
+ _keys = cs << 1
473
+ _inds = _markup_index_offsets[cs]
474
+ _slen = _markup_key_spans[cs]
475
+ _wide = ( bytes[p])
476
+ _trans = if ( _slen > 0 &&
477
+ _markup_trans_keys[_keys] <= _wide &&
478
+ _wide <= _markup_trans_keys[_keys + 1]
479
+ ) then
480
+ _markup_indicies[ _inds + _wide - _markup_trans_keys[_keys] ]
481
+ else
482
+ _markup_indicies[ _inds + _slen ]
483
+ end
484
+ cs = _markup_trans_targs[_trans]
485
+ if _markup_trans_actions[_trans] != 0
486
+ case _markup_trans_actions[_trans]
487
+ when 2 then
488
+ # line 7 "lib/xrb/fallback/markup.rl"
489
+ begin
490
+
491
+ identifier_begin = p
492
+ end
493
+ when 9 then
494
+ # line 11 "lib/xrb/fallback/markup.rl"
495
+ begin
496
+
497
+ identifier_end = p
498
+ end
499
+ when 17 then
500
+ # line 20 "lib/xrb/fallback/markup.rl"
501
+ begin
502
+
503
+ end
504
+ when 16 then
505
+ # line 32 "lib/xrb/fallback/markup.rl"
506
+ begin
507
+
508
+ characters_begin = p
509
+ end
510
+ when 27 then
511
+ # line 42 "lib/xrb/fallback/markup.rl"
512
+ begin
513
+
514
+ raise ParseError.new("could not parse entity", buffer, p)
515
+ end
516
+ when 28 then
517
+ # line 46 "lib/xrb/fallback/markup.rl"
518
+ begin
519
+
520
+ entity_begin = p
521
+ end
522
+ when 26 then
523
+ # line 108 "lib/xrb/fallback/markup.rl"
524
+ begin
525
+
526
+ end
527
+ when 24 then
528
+ # line 115 "lib/xrb/fallback/markup.rl"
529
+ begin
530
+
531
+ raise ParseError.new("could not parse instruction", buffer, p)
532
+ end
533
+ when 6 then
534
+ # line 128 "lib/xrb/fallback/markup.rl"
535
+ begin
536
+
537
+ self_closing = true
538
+ end
539
+ when 1 then
540
+ # line 168 "lib/xrb/fallback/markup.rl"
541
+ begin
542
+
543
+ raise ParseError.new("could not parse tag", buffer, p)
544
+ end
545
+ when 18 then
546
+ # line 10 "parsers/xrb/entities.rl"
547
+ begin
548
+ begin
549
+ stack[top] = cs
550
+ top+= 1
551
+ cs = 42
552
+ _goto_level = _again
553
+ next
554
+ end
555
+ end
556
+ when 25 then
557
+ # line 11 "lib/xrb/fallback/markup.rl"
558
+ begin
559
+
560
+ identifier_end = p
561
+ end
562
+ # line 105 "lib/xrb/fallback/markup.rl"
563
+ begin
564
+
565
+ end
566
+ when 3 then
567
+ # line 11 "lib/xrb/fallback/markup.rl"
568
+ begin
569
+
570
+ identifier_end = p
571
+ end
572
+ # line 119 "lib/xrb/fallback/markup.rl"
573
+ begin
574
+
575
+ self_closing = false
576
+
577
+ delegate.open_tag_begin(data.byteslice(identifier_begin...identifier_end), identifier_begin)
578
+ end
579
+ when 7 then
580
+ # line 11 "lib/xrb/fallback/markup.rl"
581
+ begin
582
+
583
+ identifier_end = p
584
+ end
585
+ # line 145 "lib/xrb/fallback/markup.rl"
586
+ begin
587
+
588
+ if has_value
589
+ pcdata = MarkupString.raw(pcdata) unless has_entities
590
+
591
+ value = pcdata
592
+ else
593
+ value = true
594
+ end
595
+
596
+ delegate.attribute(data.byteslice(identifier_begin...identifier_end), value)
597
+ end
598
+ when 10 then
599
+ # line 15 "lib/xrb/fallback/markup.rl"
600
+ begin
601
+
602
+ pcdata = ""
603
+ has_entities = false
604
+ end
605
+ # line 32 "lib/xrb/fallback/markup.rl"
606
+ begin
607
+
608
+ characters_begin = p
609
+ end
610
+ when 11 then
611
+ # line 15 "lib/xrb/fallback/markup.rl"
612
+ begin
613
+
614
+ pcdata = ""
615
+ has_entities = false
616
+ end
617
+ # line 10 "parsers/xrb/entities.rl"
618
+ begin
619
+ begin
620
+ stack[top] = cs
621
+ top+= 1
622
+ cs = 42
623
+ _goto_level = _again
624
+ next
625
+ end
626
+ end
627
+ when 12 then
628
+ # line 36 "lib/xrb/fallback/markup.rl"
629
+ begin
630
+
631
+ characters_end = p
632
+
633
+ pcdata << data.byteslice(characters_begin...characters_end)
634
+ end
635
+ # line 20 "lib/xrb/fallback/markup.rl"
636
+ begin
637
+
638
+ end
639
+ when 13 then
640
+ # line 36 "lib/xrb/fallback/markup.rl"
641
+ begin
642
+
643
+ characters_end = p
644
+
645
+ pcdata << data.byteslice(characters_begin...characters_end)
646
+ end
647
+ # line 10 "parsers/xrb/entities.rl"
648
+ begin
649
+ begin
650
+ stack[top] = cs
651
+ top+= 1
652
+ cs = 42
653
+ _goto_level = _again
654
+ next
655
+ end
656
+ end
657
+ when 31 then
658
+ # line 50 "lib/xrb/fallback/markup.rl"
659
+ begin
660
+
661
+ entity_end = p
662
+
663
+ name = data.byteslice(entity_begin...entity_end)
664
+
665
+ has_entities = true
666
+ pcdata << entities[name]
667
+ end
668
+ # line 8 "parsers/xrb/entities.rl"
669
+ begin
670
+ begin
671
+ top -= 1
672
+ cs = stack[top]
673
+ _goto_level = _again
674
+ next
675
+ end
676
+ end
677
+ when 30 then
678
+ # line 59 "lib/xrb/fallback/markup.rl"
679
+ begin
680
+
681
+ entity_end = p
682
+
683
+ has_entities = true
684
+ pcdata << data.byteslice(entity_begin...entity_end).to_i(16)
685
+ end
686
+ # line 8 "parsers/xrb/entities.rl"
687
+ begin
688
+ begin
689
+ top -= 1
690
+ cs = stack[top]
691
+ _goto_level = _again
692
+ next
693
+ end
694
+ end
695
+ when 29 then
696
+ # line 66 "lib/xrb/fallback/markup.rl"
697
+ begin
698
+
699
+ entity_end = p
700
+
701
+ has_entities = true
702
+ pcdata << data.byteslice(entity_begin...entity_end).to_i(10)
703
+ end
704
+ # line 8 "parsers/xrb/entities.rl"
705
+ begin
706
+ begin
707
+ top -= 1
708
+ cs = stack[top]
709
+ _goto_level = _again
710
+ next
711
+ end
712
+ end
713
+ when 5 then
714
+ # line 132 "lib/xrb/fallback/markup.rl"
715
+ begin
716
+
717
+ has_value = false
718
+ pcdata = ""
719
+ end
720
+ # line 7 "lib/xrb/fallback/markup.rl"
721
+ begin
722
+
723
+ identifier_begin = p
724
+ end
725
+ when 14 then
726
+ # line 137 "lib/xrb/fallback/markup.rl"
727
+ begin
728
+
729
+ has_value = true
730
+ end
731
+ # line 145 "lib/xrb/fallback/markup.rl"
732
+ begin
733
+
734
+ if has_value
735
+ pcdata = MarkupString.raw(pcdata) unless has_entities
736
+
737
+ value = pcdata
738
+ else
739
+ value = true
740
+ end
741
+
742
+ delegate.attribute(data.byteslice(identifier_begin...identifier_end), value)
743
+ end
744
+ when 19 then
745
+ # line 141 "lib/xrb/fallback/markup.rl"
746
+ begin
747
+
748
+ has_value = true
749
+ end
750
+ # line 145 "lib/xrb/fallback/markup.rl"
751
+ begin
752
+
753
+ if has_value
754
+ pcdata = MarkupString.raw(pcdata) unless has_entities
755
+
756
+ value = pcdata
757
+ else
758
+ value = true
759
+ end
760
+
761
+ delegate.attribute(data.byteslice(identifier_begin...identifier_end), value)
762
+ end
763
+ when 4 then
764
+ # line 11 "lib/xrb/fallback/markup.rl"
765
+ begin
766
+
767
+ identifier_end = p
768
+ end
769
+ # line 119 "lib/xrb/fallback/markup.rl"
770
+ begin
771
+
772
+ self_closing = false
773
+
774
+ delegate.open_tag_begin(data.byteslice(identifier_begin...identifier_end), identifier_begin)
775
+ end
776
+ # line 128 "lib/xrb/fallback/markup.rl"
777
+ begin
778
+
779
+ self_closing = true
780
+ end
781
+ when 8 then
782
+ # line 11 "lib/xrb/fallback/markup.rl"
783
+ begin
784
+
785
+ identifier_end = p
786
+ end
787
+ # line 145 "lib/xrb/fallback/markup.rl"
788
+ begin
789
+
790
+ if has_value
791
+ pcdata = MarkupString.raw(pcdata) unless has_entities
792
+
793
+ value = pcdata
794
+ else
795
+ value = true
796
+ end
797
+
798
+ delegate.attribute(data.byteslice(identifier_begin...identifier_end), value)
799
+ end
800
+ # line 128 "lib/xrb/fallback/markup.rl"
801
+ begin
802
+
803
+ self_closing = true
804
+ end
805
+ when 32 then
806
+ # line 23 "lib/xrb/fallback/markup.rl"
807
+ begin
808
+
809
+ end
810
+ # line 15 "lib/xrb/fallback/markup.rl"
811
+ begin
812
+
813
+ pcdata = ""
814
+ has_entities = false
815
+ end
816
+ # line 32 "lib/xrb/fallback/markup.rl"
817
+ begin
818
+
819
+ characters_begin = p
820
+ end
821
+ when 33 then
822
+ # line 23 "lib/xrb/fallback/markup.rl"
823
+ begin
824
+
825
+ end
826
+ # line 15 "lib/xrb/fallback/markup.rl"
827
+ begin
828
+
829
+ pcdata = ""
830
+ has_entities = false
831
+ end
832
+ # line 10 "parsers/xrb/entities.rl"
833
+ begin
834
+ begin
835
+ stack[top] = cs
836
+ top+= 1
837
+ cs = 42
838
+ _goto_level = _again
839
+ next
840
+ end
841
+ end
842
+ when 15 then
843
+ # line 137 "lib/xrb/fallback/markup.rl"
844
+ begin
845
+
846
+ has_value = true
847
+ end
848
+ # line 145 "lib/xrb/fallback/markup.rl"
849
+ begin
850
+
851
+ if has_value
852
+ pcdata = MarkupString.raw(pcdata) unless has_entities
853
+
854
+ value = pcdata
855
+ else
856
+ value = true
857
+ end
858
+
859
+ delegate.attribute(data.byteslice(identifier_begin...identifier_end), value)
860
+ end
861
+ # line 128 "lib/xrb/fallback/markup.rl"
862
+ begin
863
+
864
+ self_closing = true
865
+ end
866
+ when 20 then
867
+ # line 141 "lib/xrb/fallback/markup.rl"
868
+ begin
869
+
870
+ has_value = true
871
+ end
872
+ # line 145 "lib/xrb/fallback/markup.rl"
873
+ begin
874
+
875
+ if has_value
876
+ pcdata = MarkupString.raw(pcdata) unless has_entities
877
+
878
+ value = pcdata
879
+ else
880
+ value = true
881
+ end
882
+
883
+ delegate.attribute(data.byteslice(identifier_begin...identifier_end), value)
884
+ end
885
+ # line 128 "lib/xrb/fallback/markup.rl"
886
+ begin
887
+
888
+ self_closing = true
889
+ end
890
+ when 48 then
891
+ # line 77 "lib/xrb/fallback/markup.rl"
892
+ begin
893
+
894
+ doctype_end = p
895
+
896
+ delegate.doctype(data.byteslice(doctype_begin...doctype_end))
897
+ end
898
+ # line 23 "lib/xrb/fallback/markup.rl"
899
+ begin
900
+
901
+ end
902
+ # line 15 "lib/xrb/fallback/markup.rl"
903
+ begin
904
+
905
+ pcdata = ""
906
+ has_entities = false
907
+ end
908
+ # line 32 "lib/xrb/fallback/markup.rl"
909
+ begin
910
+
911
+ characters_begin = p
912
+ end
913
+ when 49 then
914
+ # line 77 "lib/xrb/fallback/markup.rl"
915
+ begin
916
+
917
+ doctype_end = p
918
+
919
+ delegate.doctype(data.byteslice(doctype_begin...doctype_end))
920
+ end
921
+ # line 23 "lib/xrb/fallback/markup.rl"
922
+ begin
923
+
924
+ end
925
+ # line 15 "lib/xrb/fallback/markup.rl"
926
+ begin
927
+
928
+ pcdata = ""
929
+ has_entities = false
930
+ end
931
+ # line 10 "parsers/xrb/entities.rl"
932
+ begin
933
+ begin
934
+ stack[top] = cs
935
+ top+= 1
936
+ cs = 42
937
+ _goto_level = _again
938
+ next
939
+ end
940
+ end
941
+ when 44 then
942
+ # line 91 "lib/xrb/fallback/markup.rl"
943
+ begin
944
+
945
+ comment_end = p
946
+
947
+ delegate.comment(data.byteslice(comment_begin...comment_end))
948
+ end
949
+ # line 23 "lib/xrb/fallback/markup.rl"
950
+ begin
951
+
952
+ end
953
+ # line 15 "lib/xrb/fallback/markup.rl"
954
+ begin
955
+
956
+ pcdata = ""
957
+ has_entities = false
958
+ end
959
+ # line 32 "lib/xrb/fallback/markup.rl"
960
+ begin
961
+
962
+ characters_begin = p
963
+ end
964
+ when 45 then
965
+ # line 91 "lib/xrb/fallback/markup.rl"
966
+ begin
967
+
968
+ comment_end = p
969
+
970
+ delegate.comment(data.byteslice(comment_begin...comment_end))
971
+ end
972
+ # line 23 "lib/xrb/fallback/markup.rl"
973
+ begin
974
+
975
+ end
976
+ # line 15 "lib/xrb/fallback/markup.rl"
977
+ begin
978
+
979
+ pcdata = ""
980
+ has_entities = false
981
+ end
982
+ # line 10 "parsers/xrb/entities.rl"
983
+ begin
984
+ begin
985
+ stack[top] = cs
986
+ top+= 1
987
+ cs = 42
988
+ _goto_level = _again
989
+ next
990
+ end
991
+ end
992
+ when 60 then
993
+ # line 111 "lib/xrb/fallback/markup.rl"
994
+ begin
995
+
996
+ delegate.instruction(data.byteslice(instruction_begin, p-instruction_begin))
997
+ end
998
+ # line 23 "lib/xrb/fallback/markup.rl"
999
+ begin
1000
+
1001
+ end
1002
+ # line 15 "lib/xrb/fallback/markup.rl"
1003
+ begin
1004
+
1005
+ pcdata = ""
1006
+ has_entities = false
1007
+ end
1008
+ # line 32 "lib/xrb/fallback/markup.rl"
1009
+ begin
1010
+
1011
+ characters_begin = p
1012
+ end
1013
+ when 61 then
1014
+ # line 111 "lib/xrb/fallback/markup.rl"
1015
+ begin
1016
+
1017
+ delegate.instruction(data.byteslice(instruction_begin, p-instruction_begin))
1018
+ end
1019
+ # line 23 "lib/xrb/fallback/markup.rl"
1020
+ begin
1021
+
1022
+ end
1023
+ # line 15 "lib/xrb/fallback/markup.rl"
1024
+ begin
1025
+
1026
+ pcdata = ""
1027
+ has_entities = false
1028
+ end
1029
+ # line 10 "parsers/xrb/entities.rl"
1030
+ begin
1031
+ begin
1032
+ stack[top] = cs
1033
+ top+= 1
1034
+ cs = 42
1035
+ _goto_level = _again
1036
+ next
1037
+ end
1038
+ end
1039
+ when 40 then
1040
+ # line 157 "lib/xrb/fallback/markup.rl"
1041
+ begin
1042
+
1043
+ delegate.open_tag_end(self_closing)
1044
+ end
1045
+ # line 23 "lib/xrb/fallback/markup.rl"
1046
+ begin
1047
+
1048
+ end
1049
+ # line 15 "lib/xrb/fallback/markup.rl"
1050
+ begin
1051
+
1052
+ pcdata = ""
1053
+ has_entities = false
1054
+ end
1055
+ # line 32 "lib/xrb/fallback/markup.rl"
1056
+ begin
1057
+
1058
+ characters_begin = p
1059
+ end
1060
+ when 41 then
1061
+ # line 157 "lib/xrb/fallback/markup.rl"
1062
+ begin
1063
+
1064
+ delegate.open_tag_end(self_closing)
1065
+ end
1066
+ # line 23 "lib/xrb/fallback/markup.rl"
1067
+ begin
1068
+
1069
+ end
1070
+ # line 15 "lib/xrb/fallback/markup.rl"
1071
+ begin
1072
+
1073
+ pcdata = ""
1074
+ has_entities = false
1075
+ end
1076
+ # line 10 "parsers/xrb/entities.rl"
1077
+ begin
1078
+ begin
1079
+ stack[top] = cs
1080
+ top+= 1
1081
+ cs = 42
1082
+ _goto_level = _again
1083
+ next
1084
+ end
1085
+ end
1086
+ when 56 then
1087
+ # line 164 "lib/xrb/fallback/markup.rl"
1088
+ begin
1089
+
1090
+ delegate.close_tag(data.byteslice(identifier_begin...identifier_end), identifier_begin)
1091
+ end
1092
+ # line 23 "lib/xrb/fallback/markup.rl"
1093
+ begin
1094
+
1095
+ end
1096
+ # line 15 "lib/xrb/fallback/markup.rl"
1097
+ begin
1098
+
1099
+ pcdata = ""
1100
+ has_entities = false
1101
+ end
1102
+ # line 32 "lib/xrb/fallback/markup.rl"
1103
+ begin
1104
+
1105
+ characters_begin = p
1106
+ end
1107
+ when 57 then
1108
+ # line 164 "lib/xrb/fallback/markup.rl"
1109
+ begin
1110
+
1111
+ delegate.close_tag(data.byteslice(identifier_begin...identifier_end), identifier_begin)
1112
+ end
1113
+ # line 23 "lib/xrb/fallback/markup.rl"
1114
+ begin
1115
+
1116
+ end
1117
+ # line 15 "lib/xrb/fallback/markup.rl"
1118
+ begin
1119
+
1120
+ pcdata = ""
1121
+ has_entities = false
1122
+ end
1123
+ # line 10 "parsers/xrb/entities.rl"
1124
+ begin
1125
+ begin
1126
+ stack[top] = cs
1127
+ top+= 1
1128
+ cs = 42
1129
+ _goto_level = _again
1130
+ next
1131
+ end
1132
+ end
1133
+ when 52 then
1134
+ # line 176 "lib/xrb/fallback/markup.rl"
1135
+ begin
1136
+
1137
+ cdata_end = p
1138
+
1139
+ delegate.cdata(data.byteslice(cdata_begin...cdata_end))
1140
+ end
1141
+ # line 23 "lib/xrb/fallback/markup.rl"
1142
+ begin
1143
+
1144
+ end
1145
+ # line 15 "lib/xrb/fallback/markup.rl"
1146
+ begin
1147
+
1148
+ pcdata = ""
1149
+ has_entities = false
1150
+ end
1151
+ # line 32 "lib/xrb/fallback/markup.rl"
1152
+ begin
1153
+
1154
+ characters_begin = p
1155
+ end
1156
+ when 53 then
1157
+ # line 176 "lib/xrb/fallback/markup.rl"
1158
+ begin
1159
+
1160
+ cdata_end = p
1161
+
1162
+ delegate.cdata(data.byteslice(cdata_begin...cdata_end))
1163
+ end
1164
+ # line 23 "lib/xrb/fallback/markup.rl"
1165
+ begin
1166
+
1167
+ end
1168
+ # line 15 "lib/xrb/fallback/markup.rl"
1169
+ begin
1170
+
1171
+ pcdata = ""
1172
+ has_entities = false
1173
+ end
1174
+ # line 10 "parsers/xrb/entities.rl"
1175
+ begin
1176
+ begin
1177
+ stack[top] = cs
1178
+ top+= 1
1179
+ cs = 42
1180
+ _goto_level = _again
1181
+ next
1182
+ end
1183
+ end
1184
+ when 34 then
1185
+ # line 125 "lib/xrb/fallback/markup.rl"
1186
+ begin
1187
+
1188
+ end
1189
+ # line 161 "lib/xrb/fallback/markup.rl"
1190
+ begin
1191
+
1192
+ end
1193
+ # line 101 "lib/xrb/fallback/markup.rl"
1194
+ begin
1195
+
1196
+ instruction_begin = p
1197
+ end
1198
+ # line 87 "lib/xrb/fallback/markup.rl"
1199
+ begin
1200
+
1201
+ comment_begin = p
1202
+ end
1203
+ # line 73 "lib/xrb/fallback/markup.rl"
1204
+ begin
1205
+
1206
+ doctype_begin = p
1207
+ end
1208
+ # line 172 "lib/xrb/fallback/markup.rl"
1209
+ begin
1210
+
1211
+ cdata_begin = p
1212
+ end
1213
+ when 50 then
1214
+ # line 77 "lib/xrb/fallback/markup.rl"
1215
+ begin
1216
+
1217
+ doctype_end = p
1218
+
1219
+ delegate.doctype(data.byteslice(doctype_begin...doctype_end))
1220
+ end
1221
+ # line 125 "lib/xrb/fallback/markup.rl"
1222
+ begin
1223
+
1224
+ end
1225
+ # line 161 "lib/xrb/fallback/markup.rl"
1226
+ begin
1227
+
1228
+ end
1229
+ # line 101 "lib/xrb/fallback/markup.rl"
1230
+ begin
1231
+
1232
+ instruction_begin = p
1233
+ end
1234
+ # line 87 "lib/xrb/fallback/markup.rl"
1235
+ begin
1236
+
1237
+ comment_begin = p
1238
+ end
1239
+ # line 73 "lib/xrb/fallback/markup.rl"
1240
+ begin
1241
+
1242
+ doctype_begin = p
1243
+ end
1244
+ # line 172 "lib/xrb/fallback/markup.rl"
1245
+ begin
1246
+
1247
+ cdata_begin = p
1248
+ end
1249
+ when 46 then
1250
+ # line 91 "lib/xrb/fallback/markup.rl"
1251
+ begin
1252
+
1253
+ comment_end = p
1254
+
1255
+ delegate.comment(data.byteslice(comment_begin...comment_end))
1256
+ end
1257
+ # line 125 "lib/xrb/fallback/markup.rl"
1258
+ begin
1259
+
1260
+ end
1261
+ # line 161 "lib/xrb/fallback/markup.rl"
1262
+ begin
1263
+
1264
+ end
1265
+ # line 101 "lib/xrb/fallback/markup.rl"
1266
+ begin
1267
+
1268
+ instruction_begin = p
1269
+ end
1270
+ # line 87 "lib/xrb/fallback/markup.rl"
1271
+ begin
1272
+
1273
+ comment_begin = p
1274
+ end
1275
+ # line 73 "lib/xrb/fallback/markup.rl"
1276
+ begin
1277
+
1278
+ doctype_begin = p
1279
+ end
1280
+ # line 172 "lib/xrb/fallback/markup.rl"
1281
+ begin
1282
+
1283
+ cdata_begin = p
1284
+ end
1285
+ when 62 then
1286
+ # line 111 "lib/xrb/fallback/markup.rl"
1287
+ begin
1288
+
1289
+ delegate.instruction(data.byteslice(instruction_begin, p-instruction_begin))
1290
+ end
1291
+ # line 125 "lib/xrb/fallback/markup.rl"
1292
+ begin
1293
+
1294
+ end
1295
+ # line 161 "lib/xrb/fallback/markup.rl"
1296
+ begin
1297
+
1298
+ end
1299
+ # line 101 "lib/xrb/fallback/markup.rl"
1300
+ begin
1301
+
1302
+ instruction_begin = p
1303
+ end
1304
+ # line 87 "lib/xrb/fallback/markup.rl"
1305
+ begin
1306
+
1307
+ comment_begin = p
1308
+ end
1309
+ # line 73 "lib/xrb/fallback/markup.rl"
1310
+ begin
1311
+
1312
+ doctype_begin = p
1313
+ end
1314
+ # line 172 "lib/xrb/fallback/markup.rl"
1315
+ begin
1316
+
1317
+ cdata_begin = p
1318
+ end
1319
+ when 42 then
1320
+ # line 157 "lib/xrb/fallback/markup.rl"
1321
+ begin
1322
+
1323
+ delegate.open_tag_end(self_closing)
1324
+ end
1325
+ # line 125 "lib/xrb/fallback/markup.rl"
1326
+ begin
1327
+
1328
+ end
1329
+ # line 161 "lib/xrb/fallback/markup.rl"
1330
+ begin
1331
+
1332
+ end
1333
+ # line 101 "lib/xrb/fallback/markup.rl"
1334
+ begin
1335
+
1336
+ instruction_begin = p
1337
+ end
1338
+ # line 87 "lib/xrb/fallback/markup.rl"
1339
+ begin
1340
+
1341
+ comment_begin = p
1342
+ end
1343
+ # line 73 "lib/xrb/fallback/markup.rl"
1344
+ begin
1345
+
1346
+ doctype_begin = p
1347
+ end
1348
+ # line 172 "lib/xrb/fallback/markup.rl"
1349
+ begin
1350
+
1351
+ cdata_begin = p
1352
+ end
1353
+ when 58 then
1354
+ # line 164 "lib/xrb/fallback/markup.rl"
1355
+ begin
1356
+
1357
+ delegate.close_tag(data.byteslice(identifier_begin...identifier_end), identifier_begin)
1358
+ end
1359
+ # line 125 "lib/xrb/fallback/markup.rl"
1360
+ begin
1361
+
1362
+ end
1363
+ # line 161 "lib/xrb/fallback/markup.rl"
1364
+ begin
1365
+
1366
+ end
1367
+ # line 101 "lib/xrb/fallback/markup.rl"
1368
+ begin
1369
+
1370
+ instruction_begin = p
1371
+ end
1372
+ # line 87 "lib/xrb/fallback/markup.rl"
1373
+ begin
1374
+
1375
+ comment_begin = p
1376
+ end
1377
+ # line 73 "lib/xrb/fallback/markup.rl"
1378
+ begin
1379
+
1380
+ doctype_begin = p
1381
+ end
1382
+ # line 172 "lib/xrb/fallback/markup.rl"
1383
+ begin
1384
+
1385
+ cdata_begin = p
1386
+ end
1387
+ when 54 then
1388
+ # line 176 "lib/xrb/fallback/markup.rl"
1389
+ begin
1390
+
1391
+ cdata_end = p
1392
+
1393
+ delegate.cdata(data.byteslice(cdata_begin...cdata_end))
1394
+ end
1395
+ # line 125 "lib/xrb/fallback/markup.rl"
1396
+ begin
1397
+
1398
+ end
1399
+ # line 161 "lib/xrb/fallback/markup.rl"
1400
+ begin
1401
+
1402
+ end
1403
+ # line 101 "lib/xrb/fallback/markup.rl"
1404
+ begin
1405
+
1406
+ instruction_begin = p
1407
+ end
1408
+ # line 87 "lib/xrb/fallback/markup.rl"
1409
+ begin
1410
+
1411
+ comment_begin = p
1412
+ end
1413
+ # line 73 "lib/xrb/fallback/markup.rl"
1414
+ begin
1415
+
1416
+ doctype_begin = p
1417
+ end
1418
+ # line 172 "lib/xrb/fallback/markup.rl"
1419
+ begin
1420
+
1421
+ cdata_begin = p
1422
+ end
1423
+ when 38 then
1424
+ # line 20 "lib/xrb/fallback/markup.rl"
1425
+ begin
1426
+
1427
+ end
1428
+ # line 26 "lib/xrb/fallback/markup.rl"
1429
+ begin
1430
+
1431
+ pcdata = MarkupString.raw(pcdata) unless has_entities
1432
+
1433
+ delegate.text(pcdata)
1434
+ end
1435
+ # line 125 "lib/xrb/fallback/markup.rl"
1436
+ begin
1437
+
1438
+ end
1439
+ # line 161 "lib/xrb/fallback/markup.rl"
1440
+ begin
1441
+
1442
+ end
1443
+ # line 101 "lib/xrb/fallback/markup.rl"
1444
+ begin
1445
+
1446
+ instruction_begin = p
1447
+ end
1448
+ # line 87 "lib/xrb/fallback/markup.rl"
1449
+ begin
1450
+
1451
+ comment_begin = p
1452
+ end
1453
+ # line 73 "lib/xrb/fallback/markup.rl"
1454
+ begin
1455
+
1456
+ doctype_begin = p
1457
+ end
1458
+ # line 172 "lib/xrb/fallback/markup.rl"
1459
+ begin
1460
+
1461
+ cdata_begin = p
1462
+ end
1463
+ when 36 then
1464
+ # line 36 "lib/xrb/fallback/markup.rl"
1465
+ begin
1466
+
1467
+ characters_end = p
1468
+
1469
+ pcdata << data.byteslice(characters_begin...characters_end)
1470
+ end
1471
+ # line 20 "lib/xrb/fallback/markup.rl"
1472
+ begin
1473
+
1474
+ end
1475
+ # line 26 "lib/xrb/fallback/markup.rl"
1476
+ begin
1477
+
1478
+ pcdata = MarkupString.raw(pcdata) unless has_entities
1479
+
1480
+ delegate.text(pcdata)
1481
+ end
1482
+ # line 125 "lib/xrb/fallback/markup.rl"
1483
+ begin
1484
+
1485
+ end
1486
+ # line 161 "lib/xrb/fallback/markup.rl"
1487
+ begin
1488
+
1489
+ end
1490
+ # line 101 "lib/xrb/fallback/markup.rl"
1491
+ begin
1492
+
1493
+ instruction_begin = p
1494
+ end
1495
+ # line 87 "lib/xrb/fallback/markup.rl"
1496
+ begin
1497
+
1498
+ comment_begin = p
1499
+ end
1500
+ # line 73 "lib/xrb/fallback/markup.rl"
1501
+ begin
1502
+
1503
+ doctype_begin = p
1504
+ end
1505
+ # line 172 "lib/xrb/fallback/markup.rl"
1506
+ begin
1507
+
1508
+ cdata_begin = p
1509
+ end
1510
+ # line 1511 "lib/xrb/fallback/markup.rb"
1511
+ end
1512
+ end
1513
+ end
1514
+ if _goto_level <= _again
1515
+ if cs == 0
1516
+ _goto_level = _out
1517
+ next
1518
+ end
1519
+ p += 1
1520
+ if p != pe
1521
+ _goto_level = _resume
1522
+ next
1523
+ end
1524
+ end
1525
+ if _goto_level <= _test_eof
1526
+ if p == eof
1527
+ case _markup_eof_actions[cs]
1528
+ when 27 then
1529
+ # line 42 "lib/xrb/fallback/markup.rl"
1530
+ begin
1531
+
1532
+ raise ParseError.new("could not parse entity", buffer, p)
1533
+ end
1534
+ when 47 then
1535
+ # line 77 "lib/xrb/fallback/markup.rl"
1536
+ begin
1537
+
1538
+ doctype_end = p
1539
+
1540
+ delegate.doctype(data.byteslice(doctype_begin...doctype_end))
1541
+ end
1542
+ when 22 then
1543
+ # line 83 "lib/xrb/fallback/markup.rl"
1544
+ begin
1545
+
1546
+ raise ParseError.new("could not parse doctype", buffer, p)
1547
+ end
1548
+ when 43 then
1549
+ # line 91 "lib/xrb/fallback/markup.rl"
1550
+ begin
1551
+
1552
+ comment_end = p
1553
+
1554
+ delegate.comment(data.byteslice(comment_begin...comment_end))
1555
+ end
1556
+ when 21 then
1557
+ # line 97 "lib/xrb/fallback/markup.rl"
1558
+ begin
1559
+
1560
+ raise ParseError.new("could not parse comment", buffer, p)
1561
+ end
1562
+ when 59 then
1563
+ # line 111 "lib/xrb/fallback/markup.rl"
1564
+ begin
1565
+
1566
+ delegate.instruction(data.byteslice(instruction_begin, p-instruction_begin))
1567
+ end
1568
+ when 24 then
1569
+ # line 115 "lib/xrb/fallback/markup.rl"
1570
+ begin
1571
+
1572
+ raise ParseError.new("could not parse instruction", buffer, p)
1573
+ end
1574
+ when 39 then
1575
+ # line 157 "lib/xrb/fallback/markup.rl"
1576
+ begin
1577
+
1578
+ delegate.open_tag_end(self_closing)
1579
+ end
1580
+ when 55 then
1581
+ # line 164 "lib/xrb/fallback/markup.rl"
1582
+ begin
1583
+
1584
+ delegate.close_tag(data.byteslice(identifier_begin...identifier_end), identifier_begin)
1585
+ end
1586
+ when 1 then
1587
+ # line 168 "lib/xrb/fallback/markup.rl"
1588
+ begin
1589
+
1590
+ raise ParseError.new("could not parse tag", buffer, p)
1591
+ end
1592
+ when 51 then
1593
+ # line 176 "lib/xrb/fallback/markup.rl"
1594
+ begin
1595
+
1596
+ cdata_end = p
1597
+
1598
+ delegate.cdata(data.byteslice(cdata_begin...cdata_end))
1599
+ end
1600
+ when 23 then
1601
+ # line 182 "lib/xrb/fallback/markup.rl"
1602
+ begin
1603
+
1604
+ raise ParseError.new("could not parse cdata", buffer, p)
1605
+ end
1606
+ when 37 then
1607
+ # line 20 "lib/xrb/fallback/markup.rl"
1608
+ begin
1609
+
1610
+ end
1611
+ # line 26 "lib/xrb/fallback/markup.rl"
1612
+ begin
1613
+
1614
+ pcdata = MarkupString.raw(pcdata) unless has_entities
1615
+
1616
+ delegate.text(pcdata)
1617
+ end
1618
+ when 35 then
1619
+ # line 36 "lib/xrb/fallback/markup.rl"
1620
+ begin
1621
+
1622
+ characters_end = p
1623
+
1624
+ pcdata << data.byteslice(characters_begin...characters_end)
1625
+ end
1626
+ # line 20 "lib/xrb/fallback/markup.rl"
1627
+ begin
1628
+
1629
+ end
1630
+ # line 26 "lib/xrb/fallback/markup.rl"
1631
+ begin
1632
+
1633
+ pcdata = MarkupString.raw(pcdata) unless has_entities
1634
+
1635
+ delegate.text(pcdata)
1636
+ end
1637
+ # line 1638 "lib/xrb/fallback/markup.rb"
1638
+ end
1639
+ end
1640
+
1641
+ end
1642
+ if _goto_level <= _out
1643
+ break
1644
+ end
1645
+ end
1646
+ end
1647
+
1648
+ # line 219 "lib/xrb/fallback/markup.rl"
1649
+
1650
+ if p != eof
1651
+ raise ParseError.new("could not consume all input", buffer, p)
1652
+ end
1653
+
1654
+ return nil
1655
+ end
1656
+ end
1657
+ end