1/*
2 * Copyright (c) 2023 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15// @ts-nocheck
16declare function print(arg: any, arg1?: any): string;
17
18function JSFunction() {
19  print(Function);
20  globalThis.Function = "Function";
21  print(Function);
22  delete globalThis.Function;
23  try {
24    print(Function);
25  } catch (error) {
26    print(error);
27  }
28}
29
30function JSRangeError() {
31  print(RangeError);
32  globalThis.RangeError = "RangeError";
33  print(RangeError);
34  delete globalThis.RangeError;
35  try {
36    print(RangeError);
37  } catch (error) {
38    print(error);
39  }
40}
41
42function JSError() {
43  print(Error);
44  globalThis.Error = "Error";
45  print(Error);
46  delete globalThis.Error;
47  try {
48    print(Error);
49  } catch (error) {
50    print(error);
51  }
52}
53
54function JSObject() {
55  print(Object);
56  globalThis.Object = "Object";
57  print(Object);
58  delete globalThis.Object;
59  try {
60    print(Object);
61  } catch (error) {
62    print(error);
63  }
64}
65
66function JSSyntaxError() {
67  print(SyntaxError);
68  globalThis.SyntaxError = "SyntaxError";
69  print(SyntaxError);
70  delete globalThis.SyntaxError;
71  try {
72    print(SyntaxError);
73  } catch (error) {
74    print(error);
75  }
76}
77
78function JSTypeError() {
79  print(TypeError);
80  globalThis.TypeError = "TypeError";
81  print(TypeError);
82  delete globalThis.TypeError;
83  try {
84    print(TypeError);
85  } catch (error) {
86    print(error);
87  }
88}
89
90function JSReferenceError() {
91  print(ReferenceError);
92  globalThis.ReferenceError = "ReferenceError";
93  print(ReferenceError);
94  delete globalThis.ReferenceError;
95  try {
96    print(ReferenceError);
97  } catch (error) {
98    print(error);
99  }
100}
101
102function JSURIError() {
103  print(URIError);
104  globalThis.URIError = "URIError";
105  print(URIError);
106  delete globalThis.URIError;
107  try {
108    print(URIError);
109  } catch (error) {
110    print(error);
111  }
112}
113
114function JSSymbol() {
115  print(Symbol);
116  globalThis.Symbol = "Symbol";
117  print(Symbol);
118  delete globalThis.Symbol;
119  try {
120    print(Symbol);
121  } catch (error) {
122    print(error);
123  }
124}
125
126function JSEvalError() {
127  print(EvalError);
128  globalThis.EvalError = "EvalError";
129  print(EvalError);
130  delete globalThis.EvalError;
131  try {
132    print(EvalError);
133  } catch (error) {
134    print(error);
135  }
136}
137
138function JSNumber() {
139  print(Number);
140  globalThis.Number = "Number";
141  print(Number);
142  delete globalThis.Number;
143  try {
144    print(Number);
145  } catch (error) {
146    print(error);
147  }
148}
149
150function JSparseFloat() {
151  print(parseFloat);
152  globalThis.parseFloat = "parseFloat";
153  print(parseFloat);
154  delete globalThis.parseFloat;
155  try {
156    print(parseFloat);
157  } catch (error) {
158    print(error);
159  }
160}
161
162function JSDate() {
163  print(Date);
164  globalThis.Date = "Date";
165  print(Date);
166  delete globalThis.Date;
167  try {
168    print(Date);
169  } catch (error) {
170    print(error);
171  }
172}
173
174function JSBoolean() {
175  print(Boolean);
176  globalThis.Boolean = "Boolean";
177  print(Boolean);
178  delete globalThis.Boolean;
179  try {
180    print(Boolean);
181  } catch (error) {
182    print(error);
183  }
184}
185
186function JSBigInt() {
187  print(BigInt);
188  globalThis.BigInt = "BigInt";
189  print(BigInt);
190  delete globalThis.BigInt;
191  try {
192    print(BigInt);
193  } catch (error) {
194    print(error);
195  }
196}
197
198function JSparseInt() {
199  print(parseInt);
200  globalThis.parseInt = "parseInt";
201  print(parseInt);
202  delete globalThis.parseInt;
203  try {
204    print(parseInt);
205  } catch (error) {
206    print(error);
207  }
208}
209
210function JSWeakMap() {
211  print(WeakMap);
212  globalThis.WeakMap = "WeakMap";
213  print(WeakMap);
214  delete globalThis.WeakMap;
215  try {
216    print(WeakMap);
217  } catch (error) {
218    print(error);
219  }
220}
221
222function JSRegExp() {
223  print(RegExp);
224  globalThis.RegExp = "RegExp";
225  print(RegExp);
226  delete globalThis.RegExp;
227  try {
228    print(RegExp);
229  } catch (error) {
230    print(error);
231  }
232}
233
234function JSSet() {
235  print(Set);
236  globalThis.Set = "Set";
237  print(Set);
238  delete globalThis.Set;
239  try {
240    print(Set);
241  } catch (error) {
242    print(error);
243  }
244}
245
246function JSMap() {
247  print(Map);
248  globalThis.Map = "Map";
249  print(Map);
250  delete globalThis.Map;
251  try {
252    print(Map);
253  } catch (error) {
254    print(error);
255  }
256}
257
258function JSWeakRef() {
259  print(WeakRef);
260  globalThis.WeakRef = "WeakRef";
261  print(WeakRef);
262  delete globalThis.WeakRef;
263  try {
264    print(WeakRef);
265  } catch (error) {
266    print(error);
267  }
268}
269
270function JSWeakSet() {
271  print(WeakSet);
272  globalThis.WeakSet = "WeakSet";
273  print(WeakSet);
274  delete globalThis.WeakSet;
275  try {
276    print(WeakSet);
277  } catch (error) {
278    print(error);
279  }
280}
281
282function JSFinalizationRegistry() {
283  print(FinalizationRegistry);
284  globalThis.FinalizationRegistry = "FinalizationRegistry";
285  print(FinalizationRegistry);
286  delete globalThis.FinalizationRegistry;
287  try {
288    print(FinalizationRegistry);
289  } catch (error) {
290    print(error);
291  }
292}
293
294function JSArray() {
295  print(Array);
296  globalThis.Array = "Array";
297  print(Array);
298  delete globalThis.Array;
299  try {
300    print(Array);
301  } catch (error) {
302    print(error);
303  }
304}
305
306function JSUint8ClampedArray() {
307  print(Uint8ClampedArray);
308  globalThis.Uint8ClampedArray = "Uint8ClampedArray";
309  print(Uint8ClampedArray);
310  delete globalThis.Uint8ClampedArray;
311  try {
312    print(Uint8ClampedArray);
313  } catch (error) {
314    print(error);
315  }
316}
317
318function JSUint8Array() {
319  print(Uint8Array);
320  globalThis.Uint8Array = "Uint8Array";
321  print(Uint8Array);
322  delete globalThis.Uint8Array;
323  try {
324    print(Uint8Array);
325  } catch (error) {
326    print(error);
327  }
328}
329
330function JSTypedArray() {
331  print(TypedArray);
332  globalThis.TypedArray = "TypedArray";
333  print(TypedArray);
334  delete globalThis.TypedArray;
335  try {
336    print(TypedArray);
337  } catch (error) {
338    print(error);
339  }
340}
341
342function JSInt8Array() {
343  print(Int8Array);
344  globalThis.Int8Array = "Int8Array";
345  print(Int8Array);
346  delete globalThis.Int8Array;
347  try {
348    print(Int8Array);
349  } catch (error) {
350    print(error);
351  }
352}
353
354function JSUint16Array() {
355  print(Uint16Array);
356  globalThis.Uint16Array = "Uint16Array";
357  print(Uint16Array);
358  delete globalThis.Uint16Array;
359  try {
360    print(Uint16Array);
361  } catch (error) {
362    print(error);
363  }
364}
365
366function JSUint32Array() {
367  print(Uint32Array);
368  globalThis.Uint32Array = "Uint32Array";
369  print(Uint32Array);
370  delete globalThis.Uint32Array;
371  try {
372    print(Uint32Array);
373  } catch (error) {
374    print(error);
375  }
376}
377
378function JSInt16Array() {
379  print(Int16Array);
380  globalThis.Int16Array = "Int16Array";
381  print(Int16Array);
382  delete globalThis.Int16Array;
383  try {
384    print(Int16Array);
385  } catch (error) {
386    print(error);
387  }
388}
389
390function JSInt32Array() {
391  print(Int32Array);
392  globalThis.Int32Array = "Int32Array";
393  print(Int32Array);
394  delete globalThis.Int32Array;
395  try {
396    print(Int32Array);
397  } catch (error) {
398    print(error);
399  }
400}
401
402function JSFloat32Array() {
403  print(Float32Array);
404  globalThis.Float32Array = "Float32Array";
405  print(Float32Array);
406  delete globalThis.Float32Array;
407  try {
408    print(Float32Array);
409  } catch (error) {
410    print(error);
411  }
412}
413
414function JSFloat64Array() {
415  print(Float64Array);
416  globalThis.Float64Array = "Float64Array";
417  print(Float64Array);
418  delete globalThis.Float64Array;
419  try {
420    print(Float64Array);
421  } catch (error) {
422    print(error);
423  }
424}
425
426function JSBigInt64Array() {
427  print(BigInt64Array);
428  globalThis.BigInt64Array = "BigInt64Array";
429  print(BigInt64Array);
430  delete globalThis.BigInt64Array;
431  try {
432    print(BigInt64Array);
433  } catch (error) {
434    print(error);
435  }
436}
437
438function JSBigUint64Array() {
439  print(BigUint64Array);
440  globalThis.BigUint64Array = "BigUint64Array";
441  print(BigUint64Array);
442  delete globalThis.BigUint64Array;
443  try {
444    print(BigUint64Array);
445  } catch (error) {
446    print(error);
447  }
448}
449
450function JSSharedArrayBuffer() {
451  print(SharedArrayBuffer);
452  globalThis.SharedArrayBuffer = "SharedArrayBuffer";
453  print(SharedArrayBuffer);
454  delete globalThis.SharedArrayBuffer;
455  try {
456    print(SharedArrayBuffer);
457  } catch (error) {
458    print(error);
459  }
460}
461
462function JSDataView() {
463  print(DataView);
464  globalThis.DataView = "DataView";
465  print(DataView);
466  delete globalThis.DataView;
467  try {
468    print(DataView);
469  } catch (error) {
470    print(error);
471  }
472}
473
474function JSString() {
475  print(String);
476  globalThis.String = "String";
477  print(String);
478  delete globalThis.String;
479  try {
480    print(String);
481  } catch (error) {
482    print(error);
483  }
484}
485
486function JSArrayBuffer() {
487  print(ArrayBuffer);
488  globalThis.ArrayBuffer = "ArrayBuffer";
489  print(ArrayBuffer);
490  delete globalThis.ArrayBuffer;
491  try {
492    print(ArrayBuffer);
493  } catch (error) {
494    print(error);
495  }
496}
497
498function JSeval() {
499  print(eval);
500  globalThis.eval = "eval";
501  print(eval);
502  delete globalThis.eval;
503  try {
504    print(eval);
505  } catch (error) {
506    print(error);
507  }
508}
509
510function JSisFinite() {
511  print(isFinite);
512  globalThis.isFinite = "isFinite";
513  print(isFinite);
514  delete globalThis.isFinite;
515  try {
516    print(isFinite);
517  } catch (error) {
518    print(error);
519  }
520}
521
522function JSdecodeURI() {
523  print(decodeURI);
524  globalThis.decodeURI = "decodeURI";
525  print(decodeURI);
526  delete globalThis.decodeURI;
527  try {
528    print(decodeURI);
529  } catch (error) {
530    print(error);
531  }
532}
533
534function JSdecodeURIComponent() {
535  print(decodeURIComponent);
536  globalThis.decodeURIComponent = "decodeURIComponent";
537  print(decodeURIComponent);
538  delete globalThis.decodeURIComponent;
539  try {
540    print(decodeURIComponent);
541  } catch (error) {
542    print(error);
543  }
544}
545
546function JSisNaN() {
547  print(isNaN);
548  globalThis.isNaN = "isNaN";
549  print(isNaN);
550  delete globalThis.isNaN;
551  try {
552    print(isNaN);
553  } catch (error) {
554    print(error);
555  }
556}
557
558function JSencodeURI() {
559  print(encodeURI);
560  globalThis.encodeURI = "encodeURI";
561  print(encodeURI);
562  delete globalThis.encodeURI;
563  try {
564    print(encodeURI);
565  } catch (error) {
566    print(error);
567  }
568}
569
570function JSencodeURIComponent() {
571  print(encodeURIComponent);
572  globalThis.encodeURIComponent = "encodeURIComponent";
573  print(encodeURIComponent);
574  delete globalThis.encodeURIComponent;
575  try {
576    print(encodeURIComponent);
577  } catch (error) {
578    print(error);
579  }
580}
581
582function JSMath() {
583  print(Math);
584  globalThis.Math = "Math";
585  print(Math);
586  delete globalThis.Math;
587  try {
588    print(Math);
589  } catch (error) {
590    print(error);
591  }
592}
593
594function JSJSON() {
595  print(JSON);
596  globalThis.JSON = "JSON";
597  print(JSON);
598  delete globalThis.JSON;
599  try {
600    print(JSON);
601  } catch (error) {
602    print(error);
603  }
604}
605
606function JSAtomics() {
607  print(Atomics);
608  globalThis.Atomics = "Atomics";
609  print(Atomics);
610  delete globalThis.Atomics;
611  try {
612    print(Atomics);
613  } catch (error) {
614    print(error);
615  }
616}
617
618function JSReflect() {
619  print(Reflect);
620  globalThis.Reflect = "Reflect";
621  print(Reflect);
622  delete globalThis.Reflect;
623  try {
624    print(Reflect);
625  } catch (error) {
626    print(error);
627  }
628}
629
630function JSPromise() {
631  print(Promise);
632  globalThis.Promise = "Promise";
633  print(Promise);
634  delete globalThis.Promise;
635  try {
636    print(Promise);
637  } catch (error) {
638    print(error);
639  }
640}
641
642function JSProxy() {
643  print(Proxy);
644  globalThis.Proxy = "Proxy";
645  print(Proxy);
646  delete globalThis.Proxy;
647  try {
648    print(Proxy);
649  } catch (error) {
650    print(error);
651  }
652}
653
654function JSGeneratorFunction() {
655  print(GeneratorFunction);
656  globalThis.GeneratorFunction = "GeneratorFunction";
657  print(GeneratorFunction);
658  delete globalThis.GeneratorFunction;
659  try {
660    print(GeneratorFunction);
661  } catch (error) {
662    print(error);
663  }
664}
665
666function JSIntl() {
667  print(Intl);
668  globalThis.Intl = "Intl";
669  print(Intl);
670  delete globalThis.Intl;
671  try {
672    print(Intl);
673  } catch (error) {
674    print(error);
675  }
676}
677
678JSFunction();
679JSRangeError();
680JSError();
681JSObject();
682JSSyntaxError();
683JSTypeError();
684JSReferenceError();
685JSURIError();
686JSSymbol();
687JSEvalError();
688JSNumber();
689JSparseFloat();
690JSDate();
691JSBoolean();
692JSBigInt();
693JSparseInt();
694JSWeakMap();
695JSRegExp();
696JSSet();
697JSMap();
698JSWeakRef();
699JSWeakSet();
700JSFinalizationRegistry();
701JSArray();
702JSUint8ClampedArray();
703JSUint8Array();
704JSTypedArray();
705JSInt8Array();
706JSUint16Array();
707JSUint32Array();
708JSInt16Array();
709JSInt32Array();
710JSFloat32Array();
711JSFloat64Array();
712JSBigInt64Array();
713JSBigUint64Array();
714JSSharedArrayBuffer();
715JSDataView();
716JSString();
717JSArrayBuffer();
718JSeval();
719JSisFinite();
720JSdecodeURI();
721JSdecodeURIComponent();
722JSisNaN();
723JSencodeURI();
724JSencodeURIComponent();
725JSMath();
726JSJSON();
727JSAtomics();
728JSReflect();
729JSPromise();
730JSProxy();
731JSGeneratorFunction();
732JSIntl();
733