rclnodejs 1.8.3 → 1.9.0-alpha.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 (85) hide show
  1. package/README.md +46 -37
  2. package/index.js +29 -0
  3. package/lib/action/client.js +61 -3
  4. package/lib/message_info.js +94 -0
  5. package/lib/node.js +53 -3
  6. package/lib/parameter_event_handler.js +468 -0
  7. package/lib/parameter_watcher.js +12 -12
  8. package/lib/subscription.js +38 -5
  9. package/lib/timer.js +2 -1
  10. package/lib/wait_for_message.js +111 -0
  11. package/package.json +6 -3
  12. package/prebuilds/linux-arm64/humble-jammy-arm64-rclnodejs.node +0 -0
  13. package/prebuilds/linux-arm64/jazzy-noble-arm64-rclnodejs.node +0 -0
  14. package/prebuilds/linux-arm64/kilted-noble-arm64-rclnodejs.node +0 -0
  15. package/prebuilds/linux-x64/humble-jammy-x64-rclnodejs.node +0 -0
  16. package/prebuilds/linux-x64/jazzy-noble-x64-rclnodejs.node +0 -0
  17. package/prebuilds/linux-x64/kilted-noble-x64-rclnodejs.node +0 -0
  18. package/scripts/run_asan_test.sh +118 -0
  19. package/src/executor.cpp +36 -2
  20. package/src/executor.h +11 -0
  21. package/src/rcl_action_client_bindings.cpp +70 -1
  22. package/src/rcl_context_bindings.cpp +3 -3
  23. package/src/rcl_graph_bindings.cpp +2 -2
  24. package/src/rcl_subscription_bindings.cpp +70 -2
  25. package/src/rcl_utilities.cpp +2 -2
  26. package/tools/jsdoc/Makefile +5 -0
  27. package/tools/jsdoc/README.md +96 -0
  28. package/tools/jsdoc/build-index.js +610 -0
  29. package/tools/jsdoc/publish.js +854 -0
  30. package/tools/jsdoc/regenerate-published-docs.js +605 -0
  31. package/tools/jsdoc/static/fonts/OpenSans-Bold-webfont.eot +0 -0
  32. package/tools/jsdoc/static/fonts/OpenSans-Bold-webfont.svg +1830 -0
  33. package/tools/jsdoc/static/fonts/OpenSans-Bold-webfont.woff +0 -0
  34. package/tools/jsdoc/static/fonts/OpenSans-BoldItalic-webfont.eot +0 -0
  35. package/tools/jsdoc/static/fonts/OpenSans-BoldItalic-webfont.svg +1830 -0
  36. package/tools/jsdoc/static/fonts/OpenSans-BoldItalic-webfont.woff +0 -0
  37. package/tools/jsdoc/static/fonts/OpenSans-Italic-webfont.eot +0 -0
  38. package/tools/jsdoc/static/fonts/OpenSans-Italic-webfont.svg +1830 -0
  39. package/tools/jsdoc/static/fonts/OpenSans-Italic-webfont.woff +0 -0
  40. package/tools/jsdoc/static/fonts/OpenSans-Light-webfont.eot +0 -0
  41. package/tools/jsdoc/static/fonts/OpenSans-Light-webfont.svg +1831 -0
  42. package/tools/jsdoc/static/fonts/OpenSans-Light-webfont.woff +0 -0
  43. package/tools/jsdoc/static/fonts/OpenSans-LightItalic-webfont.eot +0 -0
  44. package/tools/jsdoc/static/fonts/OpenSans-LightItalic-webfont.svg +1835 -0
  45. package/tools/jsdoc/static/fonts/OpenSans-LightItalic-webfont.woff +0 -0
  46. package/tools/jsdoc/static/fonts/OpenSans-Regular-webfont.eot +0 -0
  47. package/tools/jsdoc/static/fonts/OpenSans-Regular-webfont.svg +1831 -0
  48. package/tools/jsdoc/static/fonts/OpenSans-Regular-webfont.woff +0 -0
  49. package/tools/jsdoc/static/scripts/linenumber.js +25 -0
  50. package/tools/jsdoc/static/scripts/prettify/Apache-License-2.0.txt +202 -0
  51. package/tools/jsdoc/static/scripts/prettify/lang-css.js +36 -0
  52. package/tools/jsdoc/static/scripts/prettify/prettify.js +738 -0
  53. package/tools/jsdoc/static/styles/jsdoc-default.css +1012 -0
  54. package/tools/jsdoc/static/styles/prettify-jsdoc.css +111 -0
  55. package/tools/jsdoc/static/styles/prettify-tomorrow.css +132 -0
  56. package/tools/jsdoc/tmpl/augments.tmpl +10 -0
  57. package/tools/jsdoc/tmpl/container.tmpl +193 -0
  58. package/tools/jsdoc/tmpl/details.tmpl +143 -0
  59. package/tools/jsdoc/tmpl/example.tmpl +2 -0
  60. package/tools/jsdoc/tmpl/examples.tmpl +13 -0
  61. package/tools/jsdoc/tmpl/exceptions.tmpl +17 -0
  62. package/tools/jsdoc/tmpl/layout.tmpl +83 -0
  63. package/tools/jsdoc/tmpl/mainpage.tmpl +163 -0
  64. package/tools/jsdoc/tmpl/members.tmpl +43 -0
  65. package/tools/jsdoc/tmpl/method.tmpl +124 -0
  66. package/tools/jsdoc/tmpl/params.tmpl +133 -0
  67. package/tools/jsdoc/tmpl/properties.tmpl +110 -0
  68. package/tools/jsdoc/tmpl/returns.tmpl +12 -0
  69. package/tools/jsdoc/tmpl/source.tmpl +8 -0
  70. package/tools/jsdoc/tmpl/tutorial.tmpl +19 -0
  71. package/tools/jsdoc/tmpl/type.tmpl +7 -0
  72. package/types/action_client.d.ts +8 -0
  73. package/types/index.d.ts +34 -0
  74. package/types/message_info.d.ts +72 -0
  75. package/types/node.d.ts +21 -0
  76. package/types/parameter_event_handler.d.ts +139 -0
  77. package/types/subscription.d.ts +14 -2
  78. package/test_data_integrity.js +0 -108
  79. package/test_repro_exact.js +0 -57
  80. package/test_repro_hz.js +0 -86
  81. package/test_repro_pub.js +0 -36
  82. package/test_repro_stress.js +0 -83
  83. package/test_repro_sub.js +0 -64
  84. package/test_xproc_data.js +0 -64
  85. package/types/interfaces.d.ts +0 -8895
@@ -0,0 +1,738 @@
1
+ var q = null;
2
+ window.PR_SHOULD_USE_CONTINUATION = !0;
3
+ (function () {
4
+ function L(a) {
5
+ function m(a) {
6
+ var f = a.charCodeAt(0);
7
+ if (f !== 92) return f;
8
+ var b = a.charAt(1);
9
+ return (f = r[b])
10
+ ? f
11
+ : '0' <= b && b <= '7'
12
+ ? parseInt(a.substring(1), 8)
13
+ : b === 'u' || b === 'x'
14
+ ? parseInt(a.substring(2), 16)
15
+ : a.charCodeAt(1);
16
+ }
17
+ function e(a) {
18
+ if (a < 32) return (a < 16 ? '\\x0' : '\\x') + a.toString(16);
19
+ a = String.fromCharCode(a);
20
+ if (a === '\\' || a === '-' || a === '[' || a === ']') a = '\\' + a;
21
+ return a;
22
+ }
23
+ function h(a) {
24
+ for (
25
+ var f = a
26
+ .substring(1, a.length - 1)
27
+ .match(
28
+ /\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\[0-3][0-7]{0,2}|\\[0-7]{1,2}|\\[\S\s]|[^\\]/g
29
+ ),
30
+ a = [],
31
+ b = [],
32
+ o = f[0] === '^',
33
+ c = o ? 1 : 0,
34
+ i = f.length;
35
+ c < i;
36
+ ++c
37
+ ) {
38
+ var j = f[c];
39
+ if (/\\[bdsw]/i.test(j)) a.push(j);
40
+ else {
41
+ var j = m(j),
42
+ d;
43
+ c + 2 < i && '-' === f[c + 1]
44
+ ? ((d = m(f[c + 2])), (c += 2))
45
+ : (d = j);
46
+ b.push([j, d]);
47
+ d < 65 ||
48
+ j > 122 ||
49
+ (d < 65 ||
50
+ j > 90 ||
51
+ b.push([Math.max(65, j) | 32, Math.min(d, 90) | 32]),
52
+ d < 97 ||
53
+ j > 122 ||
54
+ b.push([Math.max(97, j) & -33, Math.min(d, 122) & -33]));
55
+ }
56
+ }
57
+ b.sort(function (a, f) {
58
+ return a[0] - f[0] || f[1] - a[1];
59
+ });
60
+ f = [];
61
+ j = [NaN, NaN];
62
+ for (c = 0; c < b.length; ++c)
63
+ ((i = b[c]),
64
+ i[0] <= j[1] + 1 ? (j[1] = Math.max(j[1], i[1])) : f.push((j = i)));
65
+ b = ['['];
66
+ o && b.push('^');
67
+ b.push.apply(b, a);
68
+ for (c = 0; c < f.length; ++c)
69
+ ((i = f[c]),
70
+ b.push(e(i[0])),
71
+ i[1] > i[0] && (i[1] + 1 > i[0] && b.push('-'), b.push(e(i[1]))));
72
+ b.push(']');
73
+ return b.join('');
74
+ }
75
+ function y(a) {
76
+ for (
77
+ var f = a.source.match(
78
+ /\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g
79
+ ),
80
+ b = f.length,
81
+ d = [],
82
+ c = 0,
83
+ i = 0;
84
+ c < b;
85
+ ++c
86
+ ) {
87
+ var j = f[c];
88
+ j === '('
89
+ ? ++i
90
+ : '\\' === j.charAt(0) &&
91
+ (j = +j.substring(1)) &&
92
+ j <= i &&
93
+ (d[j] = -1);
94
+ }
95
+ for (c = 1; c < d.length; ++c) -1 === d[c] && (d[c] = ++t);
96
+ for (i = c = 0; c < b; ++c)
97
+ ((j = f[c]),
98
+ j === '('
99
+ ? (++i, d[i] === void 0 && (f[c] = '(?:'))
100
+ : '\\' === j.charAt(0) &&
101
+ (j = +j.substring(1)) &&
102
+ j <= i &&
103
+ (f[c] = '\\' + d[i]));
104
+ for (i = c = 0; c < b; ++c)
105
+ '^' === f[c] && '^' !== f[c + 1] && (f[c] = '');
106
+ if (a.ignoreCase && s)
107
+ for (c = 0; c < b; ++c)
108
+ ((j = f[c]),
109
+ (a = j.charAt(0)),
110
+ j.length >= 2 && a === '['
111
+ ? (f[c] = h(j))
112
+ : a !== '\\' &&
113
+ (f[c] = j.replace(/[A-Za-z]/g, function (a) {
114
+ a = a.charCodeAt(0);
115
+ return '[' + String.fromCharCode(a & -33, a | 32) + ']';
116
+ })));
117
+ return f.join('');
118
+ }
119
+ for (var t = 0, s = !1, l = !1, p = 0, d = a.length; p < d; ++p) {
120
+ var g = a[p];
121
+ if (g.ignoreCase) l = !0;
122
+ else if (
123
+ /[a-z]/i.test(
124
+ g.source.replace(/\\u[\da-f]{4}|\\x[\da-f]{2}|\\[^UXux]/gi, '')
125
+ )
126
+ ) {
127
+ s = !0;
128
+ l = !1;
129
+ break;
130
+ }
131
+ }
132
+ for (
133
+ var r = { b: 8, t: 9, n: 10, v: 11, f: 12, r: 13 },
134
+ n = [],
135
+ p = 0,
136
+ d = a.length;
137
+ p < d;
138
+ ++p
139
+ ) {
140
+ g = a[p];
141
+ if (g.global || g.multiline) throw Error('' + g);
142
+ n.push('(?:' + y(g) + ')');
143
+ }
144
+ return RegExp(n.join('|'), l ? 'gi' : 'g');
145
+ }
146
+ function M(a) {
147
+ function m(a) {
148
+ switch (a.nodeType) {
149
+ case 1:
150
+ if (e.test(a.className)) break;
151
+ for (var g = a.firstChild; g; g = g.nextSibling) m(g);
152
+ g = a.nodeName;
153
+ if ('BR' === g || 'LI' === g)
154
+ ((h[s] = '\n'), (t[s << 1] = y++), (t[(s++ << 1) | 1] = a));
155
+ break;
156
+ case 3:
157
+ case 4:
158
+ ((g = a.nodeValue),
159
+ g.length &&
160
+ ((g = p
161
+ ? g.replace(/\r\n?/g, '\n')
162
+ : g.replace(/[\t\n\r ]+/g, ' ')),
163
+ (h[s] = g),
164
+ (t[s << 1] = y),
165
+ (y += g.length),
166
+ (t[(s++ << 1) | 1] = a)));
167
+ }
168
+ }
169
+ var e = /(?:^|\s)nocode(?:\s|$)/,
170
+ h = [],
171
+ y = 0,
172
+ t = [],
173
+ s = 0,
174
+ l;
175
+ a.currentStyle
176
+ ? (l = a.currentStyle.whiteSpace)
177
+ : window.getComputedStyle &&
178
+ (l = document.defaultView
179
+ .getComputedStyle(a, q)
180
+ .getPropertyValue('white-space'));
181
+ var p = l && 'pre' === l.substring(0, 3);
182
+ m(a);
183
+ return { a: h.join('').replace(/\n$/, ''), c: t };
184
+ }
185
+ function B(a, m, e, h) {
186
+ m && ((a = { a: m, d: a }), e(a), h.push.apply(h, a.e));
187
+ }
188
+ function x(a, m) {
189
+ function e(a) {
190
+ for (
191
+ var l = a.d,
192
+ p = [l, 'pln'],
193
+ d = 0,
194
+ g = a.a.match(y) || [],
195
+ r = {},
196
+ n = 0,
197
+ z = g.length;
198
+ n < z;
199
+ ++n
200
+ ) {
201
+ var f = g[n],
202
+ b = r[f],
203
+ o = void 0,
204
+ c;
205
+ if (typeof b === 'string') c = !1;
206
+ else {
207
+ var i = h[f.charAt(0)];
208
+ if (i) ((o = f.match(i[1])), (b = i[0]));
209
+ else {
210
+ for (c = 0; c < t; ++c)
211
+ if (((i = m[c]), (o = f.match(i[1])))) {
212
+ b = i[0];
213
+ break;
214
+ }
215
+ o || (b = 'pln');
216
+ }
217
+ if (
218
+ (c = b.length >= 5 && 'lang-' === b.substring(0, 5)) &&
219
+ !(o && typeof o[1] === 'string')
220
+ )
221
+ ((c = !1), (b = 'src'));
222
+ c || (r[f] = b);
223
+ }
224
+ i = d;
225
+ d += f.length;
226
+ if (c) {
227
+ c = o[1];
228
+ var j = f.indexOf(c),
229
+ k = j + c.length;
230
+ o[2] && ((k = f.length - o[2].length), (j = k - c.length));
231
+ b = b.substring(5);
232
+ B(l + i, f.substring(0, j), e, p);
233
+ B(l + i + j, c, C(b, c), p);
234
+ B(l + i + k, f.substring(k), e, p);
235
+ } else p.push(l + i, b);
236
+ }
237
+ a.e = p;
238
+ }
239
+ var h = {},
240
+ y;
241
+ (function () {
242
+ for (
243
+ var e = a.concat(m), l = [], p = {}, d = 0, g = e.length;
244
+ d < g;
245
+ ++d
246
+ ) {
247
+ var r = e[d],
248
+ n = r[3];
249
+ if (n) for (var k = n.length; --k >= 0; ) h[n.charAt(k)] = r;
250
+ r = r[1];
251
+ n = '' + r;
252
+ p.hasOwnProperty(n) || (l.push(r), (p[n] = q));
253
+ }
254
+ l.push(/[\S\s]/);
255
+ y = L(l);
256
+ })();
257
+ var t = m.length;
258
+ return e;
259
+ }
260
+ function u(a) {
261
+ var m = [],
262
+ e = [];
263
+ a.tripleQuotedStrings
264
+ ? m.push([
265
+ 'str',
266
+ /^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,
267
+ q,
268
+ '\'"',
269
+ ])
270
+ : a.multiLineStrings
271
+ ? m.push([
272
+ 'str',
273
+ /^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/,
274
+ q,
275
+ '\'"`',
276
+ ])
277
+ : m.push([
278
+ 'str',
279
+ /^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,
280
+ q,
281
+ '"\'',
282
+ ]);
283
+ a.verbatimStrings && e.push(['str', /^@"(?:[^"]|"")*(?:"|$)/, q]);
284
+ var h = a.hashComments;
285
+ h &&
286
+ (a.cStyleComments
287
+ ? (h > 1
288
+ ? m.push(['com', /^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/, q, '#'])
289
+ : m.push([
290
+ 'com',
291
+ /^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,
292
+ q,
293
+ '#',
294
+ ]),
295
+ e.push([
296
+ 'str',
297
+ /^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,
298
+ q,
299
+ ]))
300
+ : m.push(['com', /^#[^\n\r]*/, q, '#']));
301
+ a.cStyleComments &&
302
+ (e.push(['com', /^\/\/[^\n\r]*/, q]),
303
+ e.push(['com', /^\/\*[\S\s]*?(?:\*\/|$)/, q]));
304
+ a.regexLiterals &&
305
+ e.push([
306
+ 'lang-regex',
307
+ /^(?:^^\.?|[!+-]|!=|!==|#|%|%=|&|&&|&&=|&=|\(|\*|\*=|\+=|,|-=|->|\/|\/=|:|::|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|[?@[^]|\^=|\^\^|\^\^=|{|\||\|=|\|\||\|\|=|~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\s*(\/(?=[^*/])(?:[^/[\\]|\\[\S\s]|\[(?:[^\\\]]|\\[\S\s])*(?:]|$))+\/)/,
308
+ ]);
309
+ (h = a.types) && e.push(['typ', h]);
310
+ a = ('' + a.keywords).replace(/^ | $/g, '');
311
+ a.length &&
312
+ e.push(['kwd', RegExp('^(?:' + a.replace(/[\s,]+/g, '|') + ')\\b'), q]);
313
+ m.push(['pln', /^\s+/, q, ' \r\n\t\xa0']);
314
+ e.push(
315
+ ['lit', /^@[$_a-z][\w$@]*/i, q],
316
+ ['typ', /^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/, q],
317
+ ['pln', /^[$_a-z][\w$@]*/i, q],
318
+ [
319
+ 'lit',
320
+ /^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,
321
+ q,
322
+ '0123456789',
323
+ ],
324
+ ['pln', /^\\[\S\s]?/, q],
325
+ ['pun', /^.[^\s\w"-$'./@\\`]*/, q]
326
+ );
327
+ return x(m, e);
328
+ }
329
+ function D(a, m) {
330
+ function e(a) {
331
+ switch (a.nodeType) {
332
+ case 1:
333
+ if (k.test(a.className)) break;
334
+ if ('BR' === a.nodeName)
335
+ (h(a), a.parentNode && a.parentNode.removeChild(a));
336
+ else for (a = a.firstChild; a; a = a.nextSibling) e(a);
337
+ break;
338
+ case 3:
339
+ case 4:
340
+ if (p) {
341
+ var b = a.nodeValue,
342
+ d = b.match(t);
343
+ if (d) {
344
+ var c = b.substring(0, d.index);
345
+ a.nodeValue = c;
346
+ (b = b.substring(d.index + d[0].length)) &&
347
+ a.parentNode.insertBefore(s.createTextNode(b), a.nextSibling);
348
+ h(a);
349
+ c || a.parentNode.removeChild(a);
350
+ }
351
+ }
352
+ }
353
+ }
354
+ function h(a) {
355
+ function b(a, d) {
356
+ var e = d ? a.cloneNode(!1) : a,
357
+ f = a.parentNode;
358
+ if (f) {
359
+ var f = b(f, 1),
360
+ g = a.nextSibling;
361
+ f.appendChild(e);
362
+ for (var h = g; h; h = g) ((g = h.nextSibling), f.appendChild(h));
363
+ }
364
+ return e;
365
+ }
366
+ for (; !a.nextSibling; ) if (((a = a.parentNode), !a)) return;
367
+ for (
368
+ var a = b(a.nextSibling, 0), e;
369
+ (e = a.parentNode) && e.nodeType === 1;
370
+ )
371
+ a = e;
372
+ d.push(a);
373
+ }
374
+ var k = /(?:^|\s)nocode(?:\s|$)/,
375
+ t = /\r\n?|\n/,
376
+ s = a.ownerDocument,
377
+ l;
378
+ a.currentStyle
379
+ ? (l = a.currentStyle.whiteSpace)
380
+ : window.getComputedStyle &&
381
+ (l = s.defaultView
382
+ .getComputedStyle(a, q)
383
+ .getPropertyValue('white-space'));
384
+ var p = l && 'pre' === l.substring(0, 3);
385
+ for (l = s.createElement('LI'); a.firstChild; ) l.appendChild(a.firstChild);
386
+ for (var d = [l], g = 0; g < d.length; ++g) e(d[g]);
387
+ m === (m | 0) && d[0].setAttribute('value', m);
388
+ var r = s.createElement('OL');
389
+ r.className = 'linenums';
390
+ for (var n = Math.max(0, (m - 1) | 0) || 0, g = 0, z = d.length; g < z; ++g)
391
+ ((l = d[g]),
392
+ (l.className = 'L' + ((g + n) % 10)),
393
+ l.firstChild || l.appendChild(s.createTextNode('\xa0')),
394
+ r.appendChild(l));
395
+ a.appendChild(r);
396
+ }
397
+ function k(a, m) {
398
+ for (var e = m.length; --e >= 0; ) {
399
+ var h = m[e];
400
+ A.hasOwnProperty(h)
401
+ ? window.console &&
402
+ console.warn('cannot override language handler %s', h)
403
+ : (A[h] = a);
404
+ }
405
+ }
406
+ function C(a, m) {
407
+ if (!a || !A.hasOwnProperty(a))
408
+ a = /^\s*</.test(m) ? 'default-markup' : 'default-code';
409
+ return A[a];
410
+ }
411
+ function E(a) {
412
+ var m = a.g;
413
+ try {
414
+ var e = M(a.h),
415
+ h = e.a;
416
+ a.a = h;
417
+ a.c = e.c;
418
+ a.d = 0;
419
+ C(m, h)(a);
420
+ var k = /\bMSIE\b/.test(navigator.userAgent),
421
+ m = /\n/g,
422
+ t = a.a,
423
+ s = t.length,
424
+ e = 0,
425
+ l = a.c,
426
+ p = l.length,
427
+ h = 0,
428
+ d = a.e,
429
+ g = d.length,
430
+ a = 0;
431
+ d[g] = s;
432
+ var r, n;
433
+ for (n = r = 0; n < g; )
434
+ d[n] !== d[n + 2] ? ((d[r++] = d[n++]), (d[r++] = d[n++])) : (n += 2);
435
+ g = r;
436
+ for (n = r = 0; n < g; ) {
437
+ for (
438
+ var z = d[n], f = d[n + 1], b = n + 2;
439
+ b + 2 <= g && d[b + 1] === f;
440
+ )
441
+ b += 2;
442
+ d[r++] = z;
443
+ d[r++] = f;
444
+ n = b;
445
+ }
446
+ for (d.length = r; h < p; ) {
447
+ var o = l[h + 2] || s,
448
+ c = d[a + 2] || s,
449
+ b = Math.min(o, c),
450
+ i = l[h + 1],
451
+ j;
452
+ if (i.nodeType !== 1 && (j = t.substring(e, b))) {
453
+ k && (j = j.replace(m, '\r'));
454
+ i.nodeValue = j;
455
+ var u = i.ownerDocument,
456
+ v = u.createElement('SPAN');
457
+ v.className = d[a + 1];
458
+ var x = i.parentNode;
459
+ x.replaceChild(v, i);
460
+ v.appendChild(i);
461
+ e < o &&
462
+ ((l[h + 1] = i = u.createTextNode(t.substring(b, o))),
463
+ x.insertBefore(i, v.nextSibling));
464
+ }
465
+ e = b;
466
+ e >= o && (h += 2);
467
+ e >= c && (a += 2);
468
+ }
469
+ } catch (w) {
470
+ 'console' in window && console.log(w && w.stack ? w.stack : w);
471
+ }
472
+ }
473
+ var v = ['break,continue,do,else,for,if,return,while'],
474
+ w = [
475
+ [
476
+ v,
477
+ 'auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile',
478
+ ],
479
+ 'catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof',
480
+ ],
481
+ F = [
482
+ w,
483
+ 'alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where',
484
+ ],
485
+ G = [
486
+ w,
487
+ 'abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient',
488
+ ],
489
+ H = [
490
+ G,
491
+ 'as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var',
492
+ ],
493
+ w = [
494
+ w,
495
+ 'debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN',
496
+ ],
497
+ I = [
498
+ v,
499
+ 'and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None',
500
+ ],
501
+ J = [
502
+ v,
503
+ 'alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END',
504
+ ],
505
+ v = [v, 'case,done,elif,esac,eval,fi,function,in,local,set,then,until'],
506
+ K =
507
+ /^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,
508
+ N = /\S/,
509
+ O = u({
510
+ keywords: [
511
+ F,
512
+ H,
513
+ w,
514
+ 'caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END' +
515
+ I,
516
+ J,
517
+ v,
518
+ ],
519
+ hashComments: !0,
520
+ cStyleComments: !0,
521
+ multiLineStrings: !0,
522
+ regexLiterals: !0,
523
+ }),
524
+ A = {};
525
+ k(O, ['default-code']);
526
+ k(
527
+ x(
528
+ [],
529
+ [
530
+ ['pln', /^[^<?]+/],
531
+ ['dec', /^<!\w[^>]*(?:>|$)/],
532
+ ['com', /^<\!--[\S\s]*?(?:--\>|$)/],
533
+ ['lang-', /^<\?([\S\s]+?)(?:\?>|$)/],
534
+ ['lang-', /^<%([\S\s]+?)(?:%>|$)/],
535
+ ['pun', /^(?:<[%?]|[%?]>)/],
536
+ ['lang-', /^<xmp\b[^>]*>([\S\s]+?)<\/xmp\b[^>]*>/i],
537
+ ['lang-js', /^<script\b[^>]*>([\S\s]*?)(<\/script\b[^>]*>)/i],
538
+ ['lang-css', /^<style\b[^>]*>([\S\s]*?)(<\/style\b[^>]*>)/i],
539
+ ['lang-in.tag', /^(<\/?[a-z][^<>]*>)/i],
540
+ ]
541
+ ),
542
+ ['default-markup', 'htm', 'html', 'mxml', 'xhtml', 'xml', 'xsl']
543
+ );
544
+ k(
545
+ x(
546
+ [
547
+ ['pln', /^\s+/, q, ' \t\r\n'],
548
+ ['atv', /^(?:"[^"]*"?|'[^']*'?)/, q, '"\''],
549
+ ],
550
+ [
551
+ ['tag', /^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],
552
+ ['atn', /^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],
553
+ ['lang-uq.val', /^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],
554
+ ['pun', /^[/<->]+/],
555
+ ['lang-js', /^on\w+\s*=\s*"([^"]+)"/i],
556
+ ['lang-js', /^on\w+\s*=\s*'([^']+)'/i],
557
+ ['lang-js', /^on\w+\s*=\s*([^\s"'>]+)/i],
558
+ ['lang-css', /^style\s*=\s*"([^"]+)"/i],
559
+ ['lang-css', /^style\s*=\s*'([^']+)'/i],
560
+ ['lang-css', /^style\s*=\s*([^\s"'>]+)/i],
561
+ ]
562
+ ),
563
+ ['in.tag']
564
+ );
565
+ k(x([], [['atv', /^[\S\s]+/]]), ['uq.val']);
566
+ k(u({ keywords: F, hashComments: !0, cStyleComments: !0, types: K }), [
567
+ 'c',
568
+ 'cc',
569
+ 'cpp',
570
+ 'cxx',
571
+ 'cyc',
572
+ 'm',
573
+ ]);
574
+ k(u({ keywords: 'null,true,false' }), ['json']);
575
+ k(
576
+ u({
577
+ keywords: H,
578
+ hashComments: !0,
579
+ cStyleComments: !0,
580
+ verbatimStrings: !0,
581
+ types: K,
582
+ }),
583
+ ['cs']
584
+ );
585
+ k(u({ keywords: G, cStyleComments: !0 }), ['java']);
586
+ k(u({ keywords: v, hashComments: !0, multiLineStrings: !0 }), [
587
+ 'bsh',
588
+ 'csh',
589
+ 'sh',
590
+ ]);
591
+ k(
592
+ u({
593
+ keywords: I,
594
+ hashComments: !0,
595
+ multiLineStrings: !0,
596
+ tripleQuotedStrings: !0,
597
+ }),
598
+ ['cv', 'py']
599
+ );
600
+ k(
601
+ u({
602
+ keywords:
603
+ 'caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END',
604
+ hashComments: !0,
605
+ multiLineStrings: !0,
606
+ regexLiterals: !0,
607
+ }),
608
+ ['perl', 'pl', 'pm']
609
+ );
610
+ k(
611
+ u({
612
+ keywords: J,
613
+ hashComments: !0,
614
+ multiLineStrings: !0,
615
+ regexLiterals: !0,
616
+ }),
617
+ ['rb']
618
+ );
619
+ k(u({ keywords: w, cStyleComments: !0, regexLiterals: !0 }), ['js']);
620
+ k(
621
+ u({
622
+ keywords:
623
+ 'all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes',
624
+ hashComments: 3,
625
+ cStyleComments: !0,
626
+ multilineStrings: !0,
627
+ tripleQuotedStrings: !0,
628
+ regexLiterals: !0,
629
+ }),
630
+ ['coffee']
631
+ );
632
+ k(x([], [['str', /^[\S\s]+/]]), ['regex']);
633
+ window.prettyPrintOne = function (a, m, e) {
634
+ var h = document.createElement('PRE');
635
+ h.innerHTML = a;
636
+ e && D(h, e);
637
+ E({ g: m, i: e, h: h });
638
+ return h.innerHTML;
639
+ };
640
+ window.prettyPrint = function (a) {
641
+ function m() {
642
+ for (
643
+ var e = window.PR_SHOULD_USE_CONTINUATION ? l.now() + 250 : Infinity;
644
+ p < h.length && l.now() < e;
645
+ p++
646
+ ) {
647
+ var n = h[p],
648
+ k = n.className;
649
+ if (k.indexOf('prettyprint') >= 0) {
650
+ var k = k.match(g),
651
+ f,
652
+ b;
653
+ if ((b = !k)) {
654
+ b = n;
655
+ for (var o = void 0, c = b.firstChild; c; c = c.nextSibling)
656
+ var i = c.nodeType,
657
+ o =
658
+ i === 1
659
+ ? o
660
+ ? b
661
+ : c
662
+ : i === 3
663
+ ? N.test(c.nodeValue)
664
+ ? b
665
+ : o
666
+ : o;
667
+ b = (f = o === b ? void 0 : o) && 'CODE' === f.tagName;
668
+ }
669
+ b && (k = f.className.match(g));
670
+ k && (k = k[1]);
671
+ b = !1;
672
+ for (o = n.parentNode; o; o = o.parentNode)
673
+ if (
674
+ (o.tagName === 'pre' ||
675
+ o.tagName === 'code' ||
676
+ o.tagName === 'xmp') &&
677
+ o.className &&
678
+ o.className.indexOf('prettyprint') >= 0
679
+ ) {
680
+ b = !0;
681
+ break;
682
+ }
683
+ b ||
684
+ ((b = (b = n.className.match(/\blinenums\b(?::(\d+))?/))
685
+ ? b[1] && b[1].length
686
+ ? +b[1]
687
+ : !0
688
+ : !1) && D(n, b),
689
+ (d = { g: k, h: n, i: b }),
690
+ E(d));
691
+ }
692
+ }
693
+ p < h.length ? setTimeout(m, 250) : a && a();
694
+ }
695
+ for (
696
+ var e = [
697
+ document.getElementsByTagName('pre'),
698
+ document.getElementsByTagName('code'),
699
+ document.getElementsByTagName('xmp'),
700
+ ],
701
+ h = [],
702
+ k = 0;
703
+ k < e.length;
704
+ ++k
705
+ )
706
+ for (var t = 0, s = e[k].length; t < s; ++t) h.push(e[k][t]);
707
+ var e = q,
708
+ l = Date;
709
+ l.now ||
710
+ (l = {
711
+ now: function () {
712
+ return +new Date();
713
+ },
714
+ });
715
+ var p = 0,
716
+ d,
717
+ g = /\blang(?:uage)?-([\w.]+)(?!\S)/;
718
+ m();
719
+ };
720
+ window.PR = {
721
+ createSimpleLexer: x,
722
+ registerLangHandler: k,
723
+ sourceDecorator: u,
724
+ PR_ATTRIB_NAME: 'atn',
725
+ PR_ATTRIB_VALUE: 'atv',
726
+ PR_COMMENT: 'com',
727
+ PR_DECLARATION: 'dec',
728
+ PR_KEYWORD: 'kwd',
729
+ PR_LITERAL: 'lit',
730
+ PR_NOCODE: 'nocode',
731
+ PR_PLAIN: 'pln',
732
+ PR_PUNCTUATION: 'pun',
733
+ PR_SOURCE: 'src',
734
+ PR_STRING: 'str',
735
+ PR_TAG: 'tag',
736
+ PR_TYPE: 'typ',
737
+ };
738
+ })();