1pub const JS_PROP_CONFIGURABLE: u32 = 1;
4pub const JS_PROP_WRITABLE: u32 = 2;
5pub const JS_PROP_ENUMERABLE: u32 = 4;
6pub const JS_PROP_C_W_E: u32 = 7;
7pub const JS_PROP_LENGTH: u32 = 8;
8pub const JS_PROP_TMASK: u32 = 48;
9pub const JS_PROP_NORMAL: u32 = 0;
10pub const JS_PROP_GETSET: u32 = 16;
11pub const JS_PROP_VARREF: u32 = 32;
12pub const JS_PROP_AUTOINIT: u32 = 48;
13pub const JS_PROP_HAS_SHIFT: u32 = 8;
14pub const JS_PROP_HAS_CONFIGURABLE: u32 = 256;
15pub const JS_PROP_HAS_WRITABLE: u32 = 512;
16pub const JS_PROP_HAS_ENUMERABLE: u32 = 1024;
17pub const JS_PROP_HAS_GET: u32 = 2048;
18pub const JS_PROP_HAS_SET: u32 = 4096;
19pub const JS_PROP_HAS_VALUE: u32 = 8192;
20pub const JS_PROP_THROW: u32 = 16384;
21pub const JS_PROP_THROW_STRICT: u32 = 32768;
22pub const JS_PROP_NO_ADD: u32 = 65536;
23pub const JS_PROP_NO_EXOTIC: u32 = 131072;
24pub const JS_PROP_DEFINE_PROPERTY: u32 = 262144;
25pub const JS_PROP_REFLECT_DEFINE_PROPERTY: u32 = 524288;
26pub const JS_DEFAULT_STACK_SIZE: u32 = 1048576;
27pub const JS_EVAL_TYPE_GLOBAL: u32 = 0;
28pub const JS_EVAL_TYPE_MODULE: u32 = 1;
29pub const JS_EVAL_TYPE_DIRECT: u32 = 2;
30pub const JS_EVAL_TYPE_INDIRECT: u32 = 3;
31pub const JS_EVAL_TYPE_MASK: u32 = 3;
32pub const JS_EVAL_FLAG_STRICT: u32 = 8;
33pub const JS_EVAL_FLAG_UNUSED: u32 = 16;
34pub const JS_EVAL_FLAG_COMPILE_ONLY: u32 = 32;
35pub const JS_EVAL_FLAG_BACKTRACE_BARRIER: u32 = 64;
36pub const JS_EVAL_FLAG_ASYNC: u32 = 128;
37pub const JS_DUMP_BYTECODE_FINAL: u32 = 1;
38pub const JS_DUMP_BYTECODE_PASS2: u32 = 2;
39pub const JS_DUMP_BYTECODE_PASS1: u32 = 4;
40pub const JS_DUMP_BYTECODE_HEX: u32 = 16;
41pub const JS_DUMP_BYTECODE_PC2LINE: u32 = 32;
42pub const JS_DUMP_BYTECODE_STACK: u32 = 64;
43pub const JS_DUMP_BYTECODE_STEP: u32 = 128;
44pub const JS_DUMP_READ_OBJECT: u32 = 256;
45pub const JS_DUMP_FREE: u32 = 512;
46pub const JS_DUMP_GC: u32 = 1024;
47pub const JS_DUMP_GC_FREE: u32 = 2048;
48pub const JS_DUMP_MODULE_RESOLVE: u32 = 4096;
49pub const JS_DUMP_PROMISE: u32 = 8192;
50pub const JS_DUMP_LEAKS: u32 = 16384;
51pub const JS_DUMP_ATOM_LEAKS: u32 = 32768;
52pub const JS_DUMP_MEM: u32 = 65536;
53pub const JS_DUMP_OBJECTS: u32 = 131072;
54pub const JS_DUMP_ATOMS: u32 = 262144;
55pub const JS_DUMP_SHAPES: u32 = 524288;
56pub const JS_ATOM_NULL: u32 = 0;
57pub const JS_CALL_FLAG_CONSTRUCTOR: u32 = 1;
58pub const JS_EVAL_OPTIONS_VERSION: u32 = 1;
59pub const JS_INVALID_CLASS_ID: u32 = 0;
60pub const JS_GPN_STRING_MASK: u32 = 1;
61pub const JS_GPN_SYMBOL_MASK: u32 = 2;
62pub const JS_GPN_PRIVATE_MASK: u32 = 4;
63pub const JS_GPN_ENUM_ONLY: u32 = 16;
64pub const JS_GPN_SET_ENUM: u32 = 32;
65pub const JS_WRITE_OBJ_BYTECODE: u32 = 1;
66pub const JS_WRITE_OBJ_BSWAP: u32 = 0;
67pub const JS_WRITE_OBJ_SAB: u32 = 4;
68pub const JS_WRITE_OBJ_REFERENCE: u32 = 8;
69pub const JS_WRITE_OBJ_STRIP_SOURCE: u32 = 16;
70pub const JS_WRITE_OBJ_STRIP_DEBUG: u32 = 32;
71pub const JS_READ_OBJ_BYTECODE: u32 = 1;
72pub const JS_READ_OBJ_ROM_DATA: u32 = 0;
73pub const JS_READ_OBJ_SAB: u32 = 4;
74pub const JS_READ_OBJ_REFERENCE: u32 = 8;
75pub const JS_DEF_CFUNC: u32 = 0;
76pub const JS_DEF_CGETSET: u32 = 1;
77pub const JS_DEF_CGETSET_MAGIC: u32 = 2;
78pub const JS_DEF_PROP_STRING: u32 = 3;
79pub const JS_DEF_PROP_INT32: u32 = 4;
80pub const JS_DEF_PROP_INT64: u32 = 5;
81pub const JS_DEF_PROP_DOUBLE: u32 = 6;
82pub const JS_DEF_PROP_UNDEFINED: u32 = 7;
83pub const JS_DEF_OBJECT: u32 = 8;
84pub const JS_DEF_ALIAS: u32 = 9;
85pub type size_t = ::core::ffi::c_ulong;
86#[repr(C)]
87#[derive(Debug, Copy, Clone)]
88pub struct JSRuntime {
89 _unused: [u8; 0],
90}
91#[repr(C)]
92#[derive(Debug, Copy, Clone)]
93pub struct JSContext {
94 _unused: [u8; 0],
95}
96#[repr(C)]
97#[derive(Debug, Copy, Clone)]
98pub struct JSObject {
99 _unused: [u8; 0],
100}
101#[repr(C)]
102#[derive(Debug, Copy, Clone)]
103pub struct JSClass {
104 _unused: [u8; 0],
105}
106pub type JSClassID = u32;
107pub type JSAtom = u32;
108pub const JS_TAG_FIRST: _bindgen_ty_3 = -9;
109pub const JS_TAG_BIG_INT: _bindgen_ty_3 = -9;
110pub const JS_TAG_SYMBOL: _bindgen_ty_3 = -8;
111pub const JS_TAG_STRING: _bindgen_ty_3 = -7;
112pub const JS_TAG_MODULE: _bindgen_ty_3 = -3;
113pub const JS_TAG_FUNCTION_BYTECODE: _bindgen_ty_3 = -2;
114pub const JS_TAG_OBJECT: _bindgen_ty_3 = -1;
115pub const JS_TAG_INT: _bindgen_ty_3 = 0;
116pub const JS_TAG_BOOL: _bindgen_ty_3 = 1;
117pub const JS_TAG_NULL: _bindgen_ty_3 = 2;
118pub const JS_TAG_UNDEFINED: _bindgen_ty_3 = 3;
119pub const JS_TAG_UNINITIALIZED: _bindgen_ty_3 = 4;
120pub const JS_TAG_CATCH_OFFSET: _bindgen_ty_3 = 5;
121pub const JS_TAG_EXCEPTION: _bindgen_ty_3 = 6;
122pub const JS_TAG_SHORT_BIG_INT: _bindgen_ty_3 = 7;
123pub const JS_TAG_FLOAT64: _bindgen_ty_3 = 8;
124pub type _bindgen_ty_3 = ::core::ffi::c_int;
125#[repr(C)]
126#[derive(Copy, Clone)]
127pub union JSValueUnion {
128 pub int32: i32,
129 pub float64: f64,
130 pub ptr: *mut ::core::ffi::c_void,
131 pub short_big_int: i32,
132}
133#[allow(clippy::unnecessary_operation, clippy::identity_op)]
134const _: () = {
135 ["Size of JSValueUnion"][::core::mem::size_of::<JSValueUnion>() - 8usize];
136 ["Alignment of JSValueUnion"][::core::mem::align_of::<JSValueUnion>() - 8usize];
137 ["Offset of field: JSValueUnion::int32"][::core::mem::offset_of!(JSValueUnion, int32) - 0usize];
138 ["Offset of field: JSValueUnion::float64"]
139 [::core::mem::offset_of!(JSValueUnion, float64) - 0usize];
140 ["Offset of field: JSValueUnion::ptr"][::core::mem::offset_of!(JSValueUnion, ptr) - 0usize];
141 ["Offset of field: JSValueUnion::short_big_int"]
142 [::core::mem::offset_of!(JSValueUnion, short_big_int) - 0usize];
143};
144#[repr(C)]
145#[derive(Copy, Clone)]
146pub struct JSValue {
147 pub u: JSValueUnion,
148 pub tag: i64,
149}
150#[allow(clippy::unnecessary_operation, clippy::identity_op)]
151const _: () = {
152 ["Size of JSValue"][::core::mem::size_of::<JSValue>() - 16usize];
153 ["Alignment of JSValue"][::core::mem::align_of::<JSValue>() - 8usize];
154 ["Offset of field: JSValue::u"][::core::mem::offset_of!(JSValue, u) - 0usize];
155 ["Offset of field: JSValue::tag"][::core::mem::offset_of!(JSValue, tag) - 8usize];
156};
157pub type JSCFunction = ::core::option::Option<
158 unsafe extern "C" fn(
159 ctx: *mut JSContext,
160 this_val: JSValue,
161 argc: ::core::ffi::c_int,
162 argv: *mut JSValue,
163 ) -> JSValue,
164>;
165pub type JSCFunctionMagic = ::core::option::Option<
166 unsafe extern "C" fn(
167 ctx: *mut JSContext,
168 this_val: JSValue,
169 argc: ::core::ffi::c_int,
170 argv: *mut JSValue,
171 magic: ::core::ffi::c_int,
172 ) -> JSValue,
173>;
174pub type JSCFunctionData = ::core::option::Option<
175 unsafe extern "C" fn(
176 ctx: *mut JSContext,
177 this_val: JSValue,
178 argc: ::core::ffi::c_int,
179 argv: *mut JSValue,
180 magic: ::core::ffi::c_int,
181 func_data: *mut JSValue,
182 ) -> JSValue,
183>;
184pub type JSCClosure = ::core::option::Option<
185 unsafe extern "C" fn(
186 ctx: *mut JSContext,
187 this_val: JSValue,
188 argc: ::core::ffi::c_int,
189 argv: *mut JSValue,
190 magic: ::core::ffi::c_int,
191 opaque: *mut ::core::ffi::c_void,
192 ) -> JSValue,
193>;
194#[repr(C)]
195#[derive(Debug, Copy, Clone)]
196pub struct JSMallocFunctions {
197 pub js_calloc: ::core::option::Option<
198 unsafe extern "C" fn(
199 opaque: *mut ::core::ffi::c_void,
200 count: size_t,
201 size: size_t,
202 ) -> *mut ::core::ffi::c_void,
203 >,
204 pub js_malloc: ::core::option::Option<
205 unsafe extern "C" fn(
206 opaque: *mut ::core::ffi::c_void,
207 size: size_t,
208 ) -> *mut ::core::ffi::c_void,
209 >,
210 pub js_free: ::core::option::Option<
211 unsafe extern "C" fn(opaque: *mut ::core::ffi::c_void, ptr: *mut ::core::ffi::c_void),
212 >,
213 pub js_realloc: ::core::option::Option<
214 unsafe extern "C" fn(
215 opaque: *mut ::core::ffi::c_void,
216 ptr: *mut ::core::ffi::c_void,
217 size: size_t,
218 ) -> *mut ::core::ffi::c_void,
219 >,
220 pub js_malloc_usable_size:
221 ::core::option::Option<unsafe extern "C" fn(ptr: *const ::core::ffi::c_void) -> size_t>,
222}
223#[allow(clippy::unnecessary_operation, clippy::identity_op)]
224const _: () = {
225 ["Size of JSMallocFunctions"][::core::mem::size_of::<JSMallocFunctions>() - 40usize];
226 ["Alignment of JSMallocFunctions"][::core::mem::align_of::<JSMallocFunctions>() - 8usize];
227 ["Offset of field: JSMallocFunctions::js_calloc"]
228 [::core::mem::offset_of!(JSMallocFunctions, js_calloc) - 0usize];
229 ["Offset of field: JSMallocFunctions::js_malloc"]
230 [::core::mem::offset_of!(JSMallocFunctions, js_malloc) - 8usize];
231 ["Offset of field: JSMallocFunctions::js_free"]
232 [::core::mem::offset_of!(JSMallocFunctions, js_free) - 16usize];
233 ["Offset of field: JSMallocFunctions::js_realloc"]
234 [::core::mem::offset_of!(JSMallocFunctions, js_realloc) - 24usize];
235 ["Offset of field: JSMallocFunctions::js_malloc_usable_size"]
236 [::core::mem::offset_of!(JSMallocFunctions, js_malloc_usable_size) - 32usize];
237};
238pub type JSRuntimeFinalizer =
239 ::core::option::Option<unsafe extern "C" fn(rt: *mut JSRuntime, arg: *mut ::core::ffi::c_void)>;
240#[repr(C)]
241#[derive(Debug, Copy, Clone)]
242pub struct JSGCObjectHeader {
243 _unused: [u8; 0],
244}
245unsafe extern "C" {
246 pub fn JS_NewRuntime() -> *mut JSRuntime;
247}
248unsafe extern "C" {
249 pub fn JS_SetRuntimeInfo(rt: *mut JSRuntime, info: *const ::core::ffi::c_char);
250}
251unsafe extern "C" {
252 pub fn JS_SetMemoryLimit(rt: *mut JSRuntime, limit: size_t);
253}
254unsafe extern "C" {
255 pub fn JS_SetDumpFlags(rt: *mut JSRuntime, flags: u64);
256}
257unsafe extern "C" {
258 pub fn JS_GetDumpFlags(rt: *mut JSRuntime) -> u64;
259}
260unsafe extern "C" {
261 pub fn JS_GetGCThreshold(rt: *mut JSRuntime) -> size_t;
262}
263unsafe extern "C" {
264 pub fn JS_SetGCThreshold(rt: *mut JSRuntime, gc_threshold: size_t);
265}
266unsafe extern "C" {
267 pub fn JS_SetMaxStackSize(rt: *mut JSRuntime, stack_size: size_t);
268}
269unsafe extern "C" {
270 pub fn JS_UpdateStackTop(rt: *mut JSRuntime);
271}
272unsafe extern "C" {
273 pub fn JS_NewRuntime2(
274 mf: *const JSMallocFunctions,
275 opaque: *mut ::core::ffi::c_void,
276 ) -> *mut JSRuntime;
277}
278unsafe extern "C" {
279 pub fn JS_FreeRuntime(rt: *mut JSRuntime);
280}
281unsafe extern "C" {
282 pub fn JS_GetRuntimeOpaque(rt: *mut JSRuntime) -> *mut ::core::ffi::c_void;
283}
284unsafe extern "C" {
285 pub fn JS_SetRuntimeOpaque(rt: *mut JSRuntime, opaque: *mut ::core::ffi::c_void);
286}
287unsafe extern "C" {
288 pub fn JS_AddRuntimeFinalizer(
289 rt: *mut JSRuntime,
290 finalizer: JSRuntimeFinalizer,
291 arg: *mut ::core::ffi::c_void,
292 ) -> ::core::ffi::c_int;
293}
294pub type JS_MarkFunc =
295 ::core::option::Option<unsafe extern "C" fn(rt: *mut JSRuntime, gp: *mut JSGCObjectHeader)>;
296unsafe extern "C" {
297 pub fn JS_MarkValue(rt: *mut JSRuntime, val: JSValue, mark_func: JS_MarkFunc);
298}
299unsafe extern "C" {
300 pub fn JS_RunGC(rt: *mut JSRuntime);
301}
302unsafe extern "C" {
303 pub fn JS_IsLiveObject(rt: *mut JSRuntime, obj: JSValue) -> bool;
304}
305unsafe extern "C" {
306 pub fn JS_NewContext(rt: *mut JSRuntime) -> *mut JSContext;
307}
308unsafe extern "C" {
309 pub fn JS_FreeContext(s: *mut JSContext);
310}
311unsafe extern "C" {
312 pub fn JS_DupContext(ctx: *mut JSContext) -> *mut JSContext;
313}
314unsafe extern "C" {
315 pub fn JS_GetContextOpaque(ctx: *mut JSContext) -> *mut ::core::ffi::c_void;
316}
317unsafe extern "C" {
318 pub fn JS_SetContextOpaque(ctx: *mut JSContext, opaque: *mut ::core::ffi::c_void);
319}
320unsafe extern "C" {
321 pub fn JS_GetRuntime(ctx: *mut JSContext) -> *mut JSRuntime;
322}
323unsafe extern "C" {
324 pub fn JS_SetClassProto(ctx: *mut JSContext, class_id: JSClassID, obj: JSValue);
325}
326unsafe extern "C" {
327 pub fn JS_GetClassProto(ctx: *mut JSContext, class_id: JSClassID) -> JSValue;
328}
329unsafe extern "C" {
330 pub fn JS_GetFunctionProto(ctx: *mut JSContext) -> JSValue;
331}
332unsafe extern "C" {
333 pub fn JS_NewContextRaw(rt: *mut JSRuntime) -> *mut JSContext;
334}
335unsafe extern "C" {
336 pub fn JS_AddIntrinsicBaseObjects(ctx: *mut JSContext);
337}
338unsafe extern "C" {
339 pub fn JS_AddIntrinsicDate(ctx: *mut JSContext);
340}
341unsafe extern "C" {
342 pub fn JS_AddIntrinsicEval(ctx: *mut JSContext);
343}
344unsafe extern "C" {
345 pub fn JS_AddIntrinsicRegExpCompiler(ctx: *mut JSContext);
346}
347unsafe extern "C" {
348 pub fn JS_AddIntrinsicRegExp(ctx: *mut JSContext);
349}
350unsafe extern "C" {
351 pub fn JS_AddIntrinsicJSON(ctx: *mut JSContext);
352}
353unsafe extern "C" {
354 pub fn JS_AddIntrinsicProxy(ctx: *mut JSContext);
355}
356unsafe extern "C" {
357 pub fn JS_AddIntrinsicMapSet(ctx: *mut JSContext);
358}
359unsafe extern "C" {
360 pub fn JS_AddIntrinsicTypedArrays(ctx: *mut JSContext);
361}
362unsafe extern "C" {
363 pub fn JS_AddIntrinsicPromise(ctx: *mut JSContext);
364}
365unsafe extern "C" {
366 pub fn JS_AddIntrinsicBigInt(ctx: *mut JSContext);
367}
368unsafe extern "C" {
369 pub fn JS_AddIntrinsicWeakRef(ctx: *mut JSContext);
370}
371unsafe extern "C" {
372 pub fn JS_AddPerformance(ctx: *mut JSContext);
373}
374unsafe extern "C" {
375 pub fn JS_AddIntrinsicDOMException(ctx: *mut JSContext);
376}
377unsafe extern "C" {
378 pub fn JS_IsEqual(ctx: *mut JSContext, op1: JSValue, op2: JSValue) -> ::core::ffi::c_int;
379}
380unsafe extern "C" {
381 pub fn JS_IsStrictEqual(ctx: *mut JSContext, op1: JSValue, op2: JSValue) -> bool;
382}
383unsafe extern "C" {
384 pub fn JS_IsSameValue(ctx: *mut JSContext, op1: JSValue, op2: JSValue) -> bool;
385}
386unsafe extern "C" {
387 pub fn JS_IsSameValueZero(ctx: *mut JSContext, op1: JSValue, op2: JSValue) -> bool;
388}
389unsafe extern "C" {
390 pub fn js_string_codePointRange(
391 ctx: *mut JSContext,
392 this_val: JSValue,
393 argc: ::core::ffi::c_int,
394 argv: *mut JSValue,
395 ) -> JSValue;
396}
397unsafe extern "C" {
398 pub fn js_calloc_rt(
399 rt: *mut JSRuntime,
400 count: size_t,
401 size: size_t,
402 ) -> *mut ::core::ffi::c_void;
403}
404unsafe extern "C" {
405 pub fn js_malloc_rt(rt: *mut JSRuntime, size: size_t) -> *mut ::core::ffi::c_void;
406}
407unsafe extern "C" {
408 pub fn js_free_rt(rt: *mut JSRuntime, ptr: *mut ::core::ffi::c_void);
409}
410unsafe extern "C" {
411 pub fn js_realloc_rt(
412 rt: *mut JSRuntime,
413 ptr: *mut ::core::ffi::c_void,
414 size: size_t,
415 ) -> *mut ::core::ffi::c_void;
416}
417unsafe extern "C" {
418 pub fn js_malloc_usable_size_rt(rt: *mut JSRuntime, ptr: *const ::core::ffi::c_void) -> size_t;
419}
420unsafe extern "C" {
421 pub fn js_mallocz_rt(rt: *mut JSRuntime, size: size_t) -> *mut ::core::ffi::c_void;
422}
423unsafe extern "C" {
424 pub fn js_calloc(ctx: *mut JSContext, count: size_t, size: size_t) -> *mut ::core::ffi::c_void;
425}
426unsafe extern "C" {
427 pub fn js_malloc(ctx: *mut JSContext, size: size_t) -> *mut ::core::ffi::c_void;
428}
429unsafe extern "C" {
430 pub fn js_free(ctx: *mut JSContext, ptr: *mut ::core::ffi::c_void);
431}
432unsafe extern "C" {
433 pub fn js_realloc(
434 ctx: *mut JSContext,
435 ptr: *mut ::core::ffi::c_void,
436 size: size_t,
437 ) -> *mut ::core::ffi::c_void;
438}
439unsafe extern "C" {
440 pub fn js_malloc_usable_size(ctx: *mut JSContext, ptr: *const ::core::ffi::c_void) -> size_t;
441}
442unsafe extern "C" {
443 pub fn js_realloc2(
444 ctx: *mut JSContext,
445 ptr: *mut ::core::ffi::c_void,
446 size: size_t,
447 pslack: *mut size_t,
448 ) -> *mut ::core::ffi::c_void;
449}
450unsafe extern "C" {
451 pub fn js_mallocz(ctx: *mut JSContext, size: size_t) -> *mut ::core::ffi::c_void;
452}
453unsafe extern "C" {
454 pub fn js_strdup(
455 ctx: *mut JSContext,
456 str_: *const ::core::ffi::c_char,
457 ) -> *mut ::core::ffi::c_char;
458}
459unsafe extern "C" {
460 pub fn js_strndup(
461 ctx: *mut JSContext,
462 s: *const ::core::ffi::c_char,
463 n: size_t,
464 ) -> *mut ::core::ffi::c_char;
465}
466#[repr(C)]
467#[derive(Debug, Copy, Clone)]
468pub struct JSMemoryUsage {
469 pub malloc_size: i64,
470 pub malloc_limit: i64,
471 pub memory_used_size: i64,
472 pub malloc_count: i64,
473 pub memory_used_count: i64,
474 pub atom_count: i64,
475 pub atom_size: i64,
476 pub str_count: i64,
477 pub str_size: i64,
478 pub obj_count: i64,
479 pub obj_size: i64,
480 pub prop_count: i64,
481 pub prop_size: i64,
482 pub shape_count: i64,
483 pub shape_size: i64,
484 pub js_func_count: i64,
485 pub js_func_size: i64,
486 pub js_func_code_size: i64,
487 pub js_func_pc2line_count: i64,
488 pub js_func_pc2line_size: i64,
489 pub c_func_count: i64,
490 pub array_count: i64,
491 pub fast_array_count: i64,
492 pub fast_array_elements: i64,
493 pub binary_object_count: i64,
494 pub binary_object_size: i64,
495}
496#[allow(clippy::unnecessary_operation, clippy::identity_op)]
497const _: () = {
498 ["Size of JSMemoryUsage"][::core::mem::size_of::<JSMemoryUsage>() - 208usize];
499 ["Alignment of JSMemoryUsage"][::core::mem::align_of::<JSMemoryUsage>() - 8usize];
500 ["Offset of field: JSMemoryUsage::malloc_size"]
501 [::core::mem::offset_of!(JSMemoryUsage, malloc_size) - 0usize];
502 ["Offset of field: JSMemoryUsage::malloc_limit"]
503 [::core::mem::offset_of!(JSMemoryUsage, malloc_limit) - 8usize];
504 ["Offset of field: JSMemoryUsage::memory_used_size"]
505 [::core::mem::offset_of!(JSMemoryUsage, memory_used_size) - 16usize];
506 ["Offset of field: JSMemoryUsage::malloc_count"]
507 [::core::mem::offset_of!(JSMemoryUsage, malloc_count) - 24usize];
508 ["Offset of field: JSMemoryUsage::memory_used_count"]
509 [::core::mem::offset_of!(JSMemoryUsage, memory_used_count) - 32usize];
510 ["Offset of field: JSMemoryUsage::atom_count"]
511 [::core::mem::offset_of!(JSMemoryUsage, atom_count) - 40usize];
512 ["Offset of field: JSMemoryUsage::atom_size"]
513 [::core::mem::offset_of!(JSMemoryUsage, atom_size) - 48usize];
514 ["Offset of field: JSMemoryUsage::str_count"]
515 [::core::mem::offset_of!(JSMemoryUsage, str_count) - 56usize];
516 ["Offset of field: JSMemoryUsage::str_size"]
517 [::core::mem::offset_of!(JSMemoryUsage, str_size) - 64usize];
518 ["Offset of field: JSMemoryUsage::obj_count"]
519 [::core::mem::offset_of!(JSMemoryUsage, obj_count) - 72usize];
520 ["Offset of field: JSMemoryUsage::obj_size"]
521 [::core::mem::offset_of!(JSMemoryUsage, obj_size) - 80usize];
522 ["Offset of field: JSMemoryUsage::prop_count"]
523 [::core::mem::offset_of!(JSMemoryUsage, prop_count) - 88usize];
524 ["Offset of field: JSMemoryUsage::prop_size"]
525 [::core::mem::offset_of!(JSMemoryUsage, prop_size) - 96usize];
526 ["Offset of field: JSMemoryUsage::shape_count"]
527 [::core::mem::offset_of!(JSMemoryUsage, shape_count) - 104usize];
528 ["Offset of field: JSMemoryUsage::shape_size"]
529 [::core::mem::offset_of!(JSMemoryUsage, shape_size) - 112usize];
530 ["Offset of field: JSMemoryUsage::js_func_count"]
531 [::core::mem::offset_of!(JSMemoryUsage, js_func_count) - 120usize];
532 ["Offset of field: JSMemoryUsage::js_func_size"]
533 [::core::mem::offset_of!(JSMemoryUsage, js_func_size) - 128usize];
534 ["Offset of field: JSMemoryUsage::js_func_code_size"]
535 [::core::mem::offset_of!(JSMemoryUsage, js_func_code_size) - 136usize];
536 ["Offset of field: JSMemoryUsage::js_func_pc2line_count"]
537 [::core::mem::offset_of!(JSMemoryUsage, js_func_pc2line_count) - 144usize];
538 ["Offset of field: JSMemoryUsage::js_func_pc2line_size"]
539 [::core::mem::offset_of!(JSMemoryUsage, js_func_pc2line_size) - 152usize];
540 ["Offset of field: JSMemoryUsage::c_func_count"]
541 [::core::mem::offset_of!(JSMemoryUsage, c_func_count) - 160usize];
542 ["Offset of field: JSMemoryUsage::array_count"]
543 [::core::mem::offset_of!(JSMemoryUsage, array_count) - 168usize];
544 ["Offset of field: JSMemoryUsage::fast_array_count"]
545 [::core::mem::offset_of!(JSMemoryUsage, fast_array_count) - 176usize];
546 ["Offset of field: JSMemoryUsage::fast_array_elements"]
547 [::core::mem::offset_of!(JSMemoryUsage, fast_array_elements) - 184usize];
548 ["Offset of field: JSMemoryUsage::binary_object_count"]
549 [::core::mem::offset_of!(JSMemoryUsage, binary_object_count) - 192usize];
550 ["Offset of field: JSMemoryUsage::binary_object_size"]
551 [::core::mem::offset_of!(JSMemoryUsage, binary_object_size) - 200usize];
552};
553unsafe extern "C" {
554 pub fn JS_ComputeMemoryUsage(rt: *mut JSRuntime, s: *mut JSMemoryUsage);
555}
556unsafe extern "C" {
557 pub fn JS_NewAtomLen(
558 ctx: *mut JSContext,
559 str_: *const ::core::ffi::c_char,
560 len: size_t,
561 ) -> JSAtom;
562}
563unsafe extern "C" {
564 pub fn JS_NewAtom(ctx: *mut JSContext, str_: *const ::core::ffi::c_char) -> JSAtom;
565}
566unsafe extern "C" {
567 pub fn JS_NewAtomUInt32(ctx: *mut JSContext, n: u32) -> JSAtom;
568}
569unsafe extern "C" {
570 pub fn JS_DupAtom(ctx: *mut JSContext, v: JSAtom) -> JSAtom;
571}
572unsafe extern "C" {
573 pub fn JS_DupAtomRT(rt: *mut JSRuntime, v: JSAtom) -> JSAtom;
574}
575unsafe extern "C" {
576 pub fn JS_FreeAtom(ctx: *mut JSContext, v: JSAtom);
577}
578unsafe extern "C" {
579 pub fn JS_FreeAtomRT(rt: *mut JSRuntime, v: JSAtom);
580}
581unsafe extern "C" {
582 pub fn JS_AtomToValue(ctx: *mut JSContext, atom: JSAtom) -> JSValue;
583}
584unsafe extern "C" {
585 pub fn JS_AtomToString(ctx: *mut JSContext, atom: JSAtom) -> JSValue;
586}
587unsafe extern "C" {
588 pub fn JS_AtomToCStringLen(
589 ctx: *mut JSContext,
590 plen: *mut size_t,
591 atom: JSAtom,
592 ) -> *const ::core::ffi::c_char;
593}
594unsafe extern "C" {
595 pub fn JS_ValueToAtom(ctx: *mut JSContext, val: JSValue) -> JSAtom;
596}
597#[repr(C)]
598#[derive(Debug, Copy, Clone)]
599pub struct JSPropertyEnum {
600 pub is_enumerable: bool,
601 pub atom: JSAtom,
602}
603#[allow(clippy::unnecessary_operation, clippy::identity_op)]
604const _: () = {
605 ["Size of JSPropertyEnum"][::core::mem::size_of::<JSPropertyEnum>() - 8usize];
606 ["Alignment of JSPropertyEnum"][::core::mem::align_of::<JSPropertyEnum>() - 4usize];
607 ["Offset of field: JSPropertyEnum::is_enumerable"]
608 [::core::mem::offset_of!(JSPropertyEnum, is_enumerable) - 0usize];
609 ["Offset of field: JSPropertyEnum::atom"]
610 [::core::mem::offset_of!(JSPropertyEnum, atom) - 4usize];
611};
612#[repr(C)]
613#[derive(Copy, Clone)]
614pub struct JSPropertyDescriptor {
615 pub flags: ::core::ffi::c_int,
616 pub value: JSValue,
617 pub getter: JSValue,
618 pub setter: JSValue,
619}
620#[allow(clippy::unnecessary_operation, clippy::identity_op)]
621const _: () = {
622 ["Size of JSPropertyDescriptor"][::core::mem::size_of::<JSPropertyDescriptor>() - 56usize];
623 ["Alignment of JSPropertyDescriptor"][::core::mem::align_of::<JSPropertyDescriptor>() - 8usize];
624 ["Offset of field: JSPropertyDescriptor::flags"]
625 [::core::mem::offset_of!(JSPropertyDescriptor, flags) - 0usize];
626 ["Offset of field: JSPropertyDescriptor::value"]
627 [::core::mem::offset_of!(JSPropertyDescriptor, value) - 8usize];
628 ["Offset of field: JSPropertyDescriptor::getter"]
629 [::core::mem::offset_of!(JSPropertyDescriptor, getter) - 24usize];
630 ["Offset of field: JSPropertyDescriptor::setter"]
631 [::core::mem::offset_of!(JSPropertyDescriptor, setter) - 40usize];
632};
633#[repr(C)]
634#[derive(Debug, Copy, Clone)]
635pub struct JSClassExoticMethods {
636 pub get_own_property: ::core::option::Option<
637 unsafe extern "C" fn(
638 ctx: *mut JSContext,
639 desc: *mut JSPropertyDescriptor,
640 obj: JSValue,
641 prop: JSAtom,
642 ) -> ::core::ffi::c_int,
643 >,
644 pub get_own_property_names: ::core::option::Option<
645 unsafe extern "C" fn(
646 ctx: *mut JSContext,
647 ptab: *mut *mut JSPropertyEnum,
648 plen: *mut u32,
649 obj: JSValue,
650 ) -> ::core::ffi::c_int,
651 >,
652 pub delete_property: ::core::option::Option<
653 unsafe extern "C" fn(ctx: *mut JSContext, obj: JSValue, prop: JSAtom) -> ::core::ffi::c_int,
654 >,
655 pub define_own_property: ::core::option::Option<
656 unsafe extern "C" fn(
657 ctx: *mut JSContext,
658 this_obj: JSValue,
659 prop: JSAtom,
660 val: JSValue,
661 getter: JSValue,
662 setter: JSValue,
663 flags: ::core::ffi::c_int,
664 ) -> ::core::ffi::c_int,
665 >,
666 pub has_property: ::core::option::Option<
667 unsafe extern "C" fn(ctx: *mut JSContext, obj: JSValue, atom: JSAtom) -> ::core::ffi::c_int,
668 >,
669 pub get_property: ::core::option::Option<
670 unsafe extern "C" fn(
671 ctx: *mut JSContext,
672 obj: JSValue,
673 atom: JSAtom,
674 receiver: JSValue,
675 ) -> JSValue,
676 >,
677 pub set_property: ::core::option::Option<
678 unsafe extern "C" fn(
679 ctx: *mut JSContext,
680 obj: JSValue,
681 atom: JSAtom,
682 value: JSValue,
683 receiver: JSValue,
684 flags: ::core::ffi::c_int,
685 ) -> ::core::ffi::c_int,
686 >,
687}
688#[allow(clippy::unnecessary_operation, clippy::identity_op)]
689const _: () = {
690 ["Size of JSClassExoticMethods"][::core::mem::size_of::<JSClassExoticMethods>() - 56usize];
691 ["Alignment of JSClassExoticMethods"][::core::mem::align_of::<JSClassExoticMethods>() - 8usize];
692 ["Offset of field: JSClassExoticMethods::get_own_property"]
693 [::core::mem::offset_of!(JSClassExoticMethods, get_own_property) - 0usize];
694 ["Offset of field: JSClassExoticMethods::get_own_property_names"]
695 [::core::mem::offset_of!(JSClassExoticMethods, get_own_property_names) - 8usize];
696 ["Offset of field: JSClassExoticMethods::delete_property"]
697 [::core::mem::offset_of!(JSClassExoticMethods, delete_property) - 16usize];
698 ["Offset of field: JSClassExoticMethods::define_own_property"]
699 [::core::mem::offset_of!(JSClassExoticMethods, define_own_property) - 24usize];
700 ["Offset of field: JSClassExoticMethods::has_property"]
701 [::core::mem::offset_of!(JSClassExoticMethods, has_property) - 32usize];
702 ["Offset of field: JSClassExoticMethods::get_property"]
703 [::core::mem::offset_of!(JSClassExoticMethods, get_property) - 40usize];
704 ["Offset of field: JSClassExoticMethods::set_property"]
705 [::core::mem::offset_of!(JSClassExoticMethods, set_property) - 48usize];
706};
707pub type JSClassFinalizer =
708 ::core::option::Option<unsafe extern "C" fn(rt: *mut JSRuntime, val: JSValue)>;
709pub type JSClassGCMark = ::core::option::Option<
710 unsafe extern "C" fn(rt: *mut JSRuntime, val: JSValue, mark_func: JS_MarkFunc),
711>;
712pub type JSClassCall = ::core::option::Option<
713 unsafe extern "C" fn(
714 ctx: *mut JSContext,
715 func_obj: JSValue,
716 this_val: JSValue,
717 argc: ::core::ffi::c_int,
718 argv: *mut JSValue,
719 flags: ::core::ffi::c_int,
720 ) -> JSValue,
721>;
722#[repr(C)]
723#[derive(Debug, Copy, Clone)]
724pub struct JSClassDef {
725 pub class_name: *const ::core::ffi::c_char,
726 pub finalizer: JSClassFinalizer,
727 pub gc_mark: JSClassGCMark,
728 pub call: JSClassCall,
729 pub exotic: *mut JSClassExoticMethods,
730}
731#[allow(clippy::unnecessary_operation, clippy::identity_op)]
732const _: () = {
733 ["Size of JSClassDef"][::core::mem::size_of::<JSClassDef>() - 40usize];
734 ["Alignment of JSClassDef"][::core::mem::align_of::<JSClassDef>() - 8usize];
735 ["Offset of field: JSClassDef::class_name"]
736 [::core::mem::offset_of!(JSClassDef, class_name) - 0usize];
737 ["Offset of field: JSClassDef::finalizer"]
738 [::core::mem::offset_of!(JSClassDef, finalizer) - 8usize];
739 ["Offset of field: JSClassDef::gc_mark"]
740 [::core::mem::offset_of!(JSClassDef, gc_mark) - 16usize];
741 ["Offset of field: JSClassDef::call"][::core::mem::offset_of!(JSClassDef, call) - 24usize];
742 ["Offset of field: JSClassDef::exotic"][::core::mem::offset_of!(JSClassDef, exotic) - 32usize];
743};
744#[repr(C)]
745#[derive(Debug, Copy, Clone)]
746pub struct JSEvalOptions {
747 pub version: ::core::ffi::c_int,
748 pub eval_flags: ::core::ffi::c_int,
749 pub filename: *const ::core::ffi::c_char,
750 pub line_num: ::core::ffi::c_int,
751}
752#[allow(clippy::unnecessary_operation, clippy::identity_op)]
753const _: () = {
754 ["Size of JSEvalOptions"][::core::mem::size_of::<JSEvalOptions>() - 24usize];
755 ["Alignment of JSEvalOptions"][::core::mem::align_of::<JSEvalOptions>() - 8usize];
756 ["Offset of field: JSEvalOptions::version"]
757 [::core::mem::offset_of!(JSEvalOptions, version) - 0usize];
758 ["Offset of field: JSEvalOptions::eval_flags"]
759 [::core::mem::offset_of!(JSEvalOptions, eval_flags) - 4usize];
760 ["Offset of field: JSEvalOptions::filename"]
761 [::core::mem::offset_of!(JSEvalOptions, filename) - 8usize];
762 ["Offset of field: JSEvalOptions::line_num"]
763 [::core::mem::offset_of!(JSEvalOptions, line_num) - 16usize];
764};
765unsafe extern "C" {
766 pub fn JS_NewClassID(rt: *mut JSRuntime, pclass_id: *mut JSClassID) -> JSClassID;
767}
768unsafe extern "C" {
769 pub fn JS_GetClassID(v: JSValue) -> JSClassID;
770}
771unsafe extern "C" {
772 pub fn JS_NewClass(
773 rt: *mut JSRuntime,
774 class_id: JSClassID,
775 class_def: *const JSClassDef,
776 ) -> ::core::ffi::c_int;
777}
778unsafe extern "C" {
779 pub fn JS_IsRegisteredClass(rt: *mut JSRuntime, class_id: JSClassID) -> bool;
780}
781unsafe extern "C" {
782 pub fn JS_GetClassName(rt: *mut JSRuntime, class_id: JSClassID) -> JSAtom;
783}
784unsafe extern "C" {
785 pub fn JS_NewNumber(ctx: *mut JSContext, d: f64) -> JSValue;
786}
787unsafe extern "C" {
788 pub fn JS_NewBigInt64(ctx: *mut JSContext, v: i64) -> JSValue;
789}
790unsafe extern "C" {
791 pub fn JS_NewBigUint64(ctx: *mut JSContext, v: u64) -> JSValue;
792}
793unsafe extern "C" {
794 pub fn JS_Throw(ctx: *mut JSContext, obj: JSValue) -> JSValue;
795}
796unsafe extern "C" {
797 pub fn JS_GetException(ctx: *mut JSContext) -> JSValue;
798}
799unsafe extern "C" {
800 pub fn JS_HasException(ctx: *mut JSContext) -> bool;
801}
802unsafe extern "C" {
803 pub fn JS_IsError(val: JSValue) -> bool;
804}
805unsafe extern "C" {
806 pub fn JS_IsUncatchableError(val: JSValue) -> bool;
807}
808unsafe extern "C" {
809 pub fn JS_SetUncatchableError(ctx: *mut JSContext, val: JSValue);
810}
811unsafe extern "C" {
812 pub fn JS_ClearUncatchableError(ctx: *mut JSContext, val: JSValue);
813}
814unsafe extern "C" {
815 pub fn JS_ResetUncatchableError(ctx: *mut JSContext);
816}
817unsafe extern "C" {
818 pub fn JS_NewError(ctx: *mut JSContext) -> JSValue;
819}
820unsafe extern "C" {
821 pub fn JS_NewInternalError(
822 ctx: *mut JSContext,
823 fmt: *const ::core::ffi::c_char,
824 ...
825 ) -> JSValue;
826}
827unsafe extern "C" {
828 pub fn JS_NewPlainError(ctx: *mut JSContext, fmt: *const ::core::ffi::c_char, ...) -> JSValue;
829}
830unsafe extern "C" {
831 pub fn JS_NewRangeError(ctx: *mut JSContext, fmt: *const ::core::ffi::c_char, ...) -> JSValue;
832}
833unsafe extern "C" {
834 pub fn JS_NewReferenceError(
835 ctx: *mut JSContext,
836 fmt: *const ::core::ffi::c_char,
837 ...
838 ) -> JSValue;
839}
840unsafe extern "C" {
841 pub fn JS_NewSyntaxError(ctx: *mut JSContext, fmt: *const ::core::ffi::c_char, ...) -> JSValue;
842}
843unsafe extern "C" {
844 pub fn JS_NewTypeError(ctx: *mut JSContext, fmt: *const ::core::ffi::c_char, ...) -> JSValue;
845}
846unsafe extern "C" {
847 pub fn JS_ThrowInternalError(
848 ctx: *mut JSContext,
849 fmt: *const ::core::ffi::c_char,
850 ...
851 ) -> JSValue;
852}
853unsafe extern "C" {
854 pub fn JS_ThrowPlainError(ctx: *mut JSContext, fmt: *const ::core::ffi::c_char, ...)
855 -> JSValue;
856}
857unsafe extern "C" {
858 pub fn JS_ThrowRangeError(ctx: *mut JSContext, fmt: *const ::core::ffi::c_char, ...)
859 -> JSValue;
860}
861unsafe extern "C" {
862 pub fn JS_ThrowReferenceError(
863 ctx: *mut JSContext,
864 fmt: *const ::core::ffi::c_char,
865 ...
866 ) -> JSValue;
867}
868unsafe extern "C" {
869 pub fn JS_ThrowSyntaxError(
870 ctx: *mut JSContext,
871 fmt: *const ::core::ffi::c_char,
872 ...
873 ) -> JSValue;
874}
875unsafe extern "C" {
876 pub fn JS_ThrowTypeError(ctx: *mut JSContext, fmt: *const ::core::ffi::c_char, ...) -> JSValue;
877}
878unsafe extern "C" {
879 pub fn JS_ThrowDOMException(
880 ctx: *mut JSContext,
881 name: *const ::core::ffi::c_char,
882 fmt: *const ::core::ffi::c_char,
883 ...
884 ) -> JSValue;
885}
886unsafe extern "C" {
887 pub fn JS_ThrowOutOfMemory(ctx: *mut JSContext) -> JSValue;
888}
889unsafe extern "C" {
890 pub fn JS_FreeValue(ctx: *mut JSContext, v: JSValue);
891}
892unsafe extern "C" {
893 pub fn JS_FreeValueRT(rt: *mut JSRuntime, v: JSValue);
894}
895unsafe extern "C" {
896 pub fn JS_DupValue(ctx: *mut JSContext, v: JSValue) -> JSValue;
897}
898unsafe extern "C" {
899 pub fn JS_DupValueRT(rt: *mut JSRuntime, v: JSValue) -> JSValue;
900}
901unsafe extern "C" {
902 pub fn JS_ToBool(ctx: *mut JSContext, val: JSValue) -> ::core::ffi::c_int;
903}
904unsafe extern "C" {
905 pub fn JS_ToNumber(ctx: *mut JSContext, val: JSValue) -> JSValue;
906}
907unsafe extern "C" {
908 pub fn JS_ToInt32(ctx: *mut JSContext, pres: *mut i32, val: JSValue) -> ::core::ffi::c_int;
909}
910unsafe extern "C" {
911 pub fn JS_ToInt64(ctx: *mut JSContext, pres: *mut i64, val: JSValue) -> ::core::ffi::c_int;
912}
913unsafe extern "C" {
914 pub fn JS_ToIndex(ctx: *mut JSContext, plen: *mut u64, val: JSValue) -> ::core::ffi::c_int;
915}
916unsafe extern "C" {
917 pub fn JS_ToFloat64(ctx: *mut JSContext, pres: *mut f64, val: JSValue) -> ::core::ffi::c_int;
918}
919unsafe extern "C" {
920 pub fn JS_ToBigInt64(ctx: *mut JSContext, pres: *mut i64, val: JSValue) -> ::core::ffi::c_int;
921}
922unsafe extern "C" {
923 pub fn JS_ToBigUint64(ctx: *mut JSContext, pres: *mut u64, val: JSValue) -> ::core::ffi::c_int;
924}
925unsafe extern "C" {
926 pub fn JS_ToInt64Ext(ctx: *mut JSContext, pres: *mut i64, val: JSValue) -> ::core::ffi::c_int;
927}
928unsafe extern "C" {
929 pub fn JS_NewStringLen(
930 ctx: *mut JSContext,
931 str1: *const ::core::ffi::c_char,
932 len1: size_t,
933 ) -> JSValue;
934}
935unsafe extern "C" {
936 pub fn JS_NewTwoByteString(ctx: *mut JSContext, buf: *const u16, len: size_t) -> JSValue;
937}
938unsafe extern "C" {
939 pub fn JS_NewAtomString(ctx: *mut JSContext, str_: *const ::core::ffi::c_char) -> JSValue;
940}
941unsafe extern "C" {
942 pub fn JS_ToString(ctx: *mut JSContext, val: JSValue) -> JSValue;
943}
944unsafe extern "C" {
945 pub fn JS_ToPropertyKey(ctx: *mut JSContext, val: JSValue) -> JSValue;
946}
947unsafe extern "C" {
948 pub fn JS_ToCStringLen2(
949 ctx: *mut JSContext,
950 plen: *mut size_t,
951 val1: JSValue,
952 cesu8: bool,
953 ) -> *const ::core::ffi::c_char;
954}
955unsafe extern "C" {
956 pub fn JS_FreeCString(ctx: *mut JSContext, ptr: *const ::core::ffi::c_char);
957}
958unsafe extern "C" {
959 pub fn JS_FreeCStringRT(rt: *mut JSRuntime, ptr: *const ::core::ffi::c_char);
960}
961unsafe extern "C" {
962 pub fn JS_NewObjectProtoClass(
963 ctx: *mut JSContext,
964 proto: JSValue,
965 class_id: JSClassID,
966 ) -> JSValue;
967}
968unsafe extern "C" {
969 pub fn JS_NewObjectClass(ctx: *mut JSContext, class_id: JSClassID) -> JSValue;
970}
971unsafe extern "C" {
972 pub fn JS_NewObjectProto(ctx: *mut JSContext, proto: JSValue) -> JSValue;
973}
974unsafe extern "C" {
975 pub fn JS_NewObject(ctx: *mut JSContext) -> JSValue;
976}
977unsafe extern "C" {
978 pub fn JS_NewObjectFrom(
979 ctx: *mut JSContext,
980 count: ::core::ffi::c_int,
981 props: *const JSAtom,
982 values: *const JSValue,
983 ) -> JSValue;
984}
985unsafe extern "C" {
986 pub fn JS_NewObjectFromStr(
987 ctx: *mut JSContext,
988 count: ::core::ffi::c_int,
989 props: *mut *const ::core::ffi::c_char,
990 values: *const JSValue,
991 ) -> JSValue;
992}
993unsafe extern "C" {
994 pub fn JS_ToObject(ctx: *mut JSContext, val: JSValue) -> JSValue;
995}
996unsafe extern "C" {
997 pub fn JS_ToObjectString(ctx: *mut JSContext, val: JSValue) -> JSValue;
998}
999unsafe extern "C" {
1000 pub fn JS_IsFunction(ctx: *mut JSContext, val: JSValue) -> bool;
1001}
1002unsafe extern "C" {
1003 pub fn JS_IsConstructor(ctx: *mut JSContext, val: JSValue) -> bool;
1004}
1005unsafe extern "C" {
1006 pub fn JS_SetConstructorBit(ctx: *mut JSContext, func_obj: JSValue, val: bool) -> bool;
1007}
1008unsafe extern "C" {
1009 pub fn JS_IsRegExp(val: JSValue) -> bool;
1010}
1011unsafe extern "C" {
1012 pub fn JS_IsMap(val: JSValue) -> bool;
1013}
1014unsafe extern "C" {
1015 pub fn JS_IsSet(val: JSValue) -> bool;
1016}
1017unsafe extern "C" {
1018 pub fn JS_IsWeakRef(val: JSValue) -> bool;
1019}
1020unsafe extern "C" {
1021 pub fn JS_IsWeakSet(val: JSValue) -> bool;
1022}
1023unsafe extern "C" {
1024 pub fn JS_IsWeakMap(val: JSValue) -> bool;
1025}
1026unsafe extern "C" {
1027 pub fn JS_IsDataView(val: JSValue) -> bool;
1028}
1029unsafe extern "C" {
1030 pub fn JS_NewArray(ctx: *mut JSContext) -> JSValue;
1031}
1032unsafe extern "C" {
1033 pub fn JS_NewArrayFrom(
1034 ctx: *mut JSContext,
1035 count: ::core::ffi::c_int,
1036 values: *const JSValue,
1037 ) -> JSValue;
1038}
1039unsafe extern "C" {
1040 pub fn JS_IsArray(val: JSValue) -> bool;
1041}
1042unsafe extern "C" {
1043 pub fn JS_IsProxy(val: JSValue) -> bool;
1044}
1045unsafe extern "C" {
1046 pub fn JS_GetProxyTarget(ctx: *mut JSContext, proxy: JSValue) -> JSValue;
1047}
1048unsafe extern "C" {
1049 pub fn JS_GetProxyHandler(ctx: *mut JSContext, proxy: JSValue) -> JSValue;
1050}
1051unsafe extern "C" {
1052 pub fn JS_NewProxy(ctx: *mut JSContext, target: JSValue, handler: JSValue) -> JSValue;
1053}
1054unsafe extern "C" {
1055 pub fn JS_NewDate(ctx: *mut JSContext, epoch_ms: f64) -> JSValue;
1056}
1057unsafe extern "C" {
1058 pub fn JS_IsDate(v: JSValue) -> bool;
1059}
1060unsafe extern "C" {
1061 pub fn JS_GetProperty(ctx: *mut JSContext, this_obj: JSValue, prop: JSAtom) -> JSValue;
1062}
1063unsafe extern "C" {
1064 pub fn JS_GetPropertyUint32(ctx: *mut JSContext, this_obj: JSValue, idx: u32) -> JSValue;
1065}
1066unsafe extern "C" {
1067 pub fn JS_GetPropertyInt64(ctx: *mut JSContext, this_obj: JSValue, idx: i64) -> JSValue;
1068}
1069unsafe extern "C" {
1070 pub fn JS_GetPropertyStr(
1071 ctx: *mut JSContext,
1072 this_obj: JSValue,
1073 prop: *const ::core::ffi::c_char,
1074 ) -> JSValue;
1075}
1076unsafe extern "C" {
1077 pub fn JS_SetProperty(
1078 ctx: *mut JSContext,
1079 this_obj: JSValue,
1080 prop: JSAtom,
1081 val: JSValue,
1082 ) -> ::core::ffi::c_int;
1083}
1084unsafe extern "C" {
1085 pub fn JS_SetPropertyUint32(
1086 ctx: *mut JSContext,
1087 this_obj: JSValue,
1088 idx: u32,
1089 val: JSValue,
1090 ) -> ::core::ffi::c_int;
1091}
1092unsafe extern "C" {
1093 pub fn JS_SetPropertyInt64(
1094 ctx: *mut JSContext,
1095 this_obj: JSValue,
1096 idx: i64,
1097 val: JSValue,
1098 ) -> ::core::ffi::c_int;
1099}
1100unsafe extern "C" {
1101 pub fn JS_SetPropertyStr(
1102 ctx: *mut JSContext,
1103 this_obj: JSValue,
1104 prop: *const ::core::ffi::c_char,
1105 val: JSValue,
1106 ) -> ::core::ffi::c_int;
1107}
1108unsafe extern "C" {
1109 pub fn JS_HasProperty(
1110 ctx: *mut JSContext,
1111 this_obj: JSValue,
1112 prop: JSAtom,
1113 ) -> ::core::ffi::c_int;
1114}
1115unsafe extern "C" {
1116 pub fn JS_IsExtensible(ctx: *mut JSContext, obj: JSValue) -> ::core::ffi::c_int;
1117}
1118unsafe extern "C" {
1119 pub fn JS_PreventExtensions(ctx: *mut JSContext, obj: JSValue) -> ::core::ffi::c_int;
1120}
1121unsafe extern "C" {
1122 pub fn JS_DeleteProperty(
1123 ctx: *mut JSContext,
1124 obj: JSValue,
1125 prop: JSAtom,
1126 flags: ::core::ffi::c_int,
1127 ) -> ::core::ffi::c_int;
1128}
1129unsafe extern "C" {
1130 pub fn JS_SetPrototype(
1131 ctx: *mut JSContext,
1132 obj: JSValue,
1133 proto_val: JSValue,
1134 ) -> ::core::ffi::c_int;
1135}
1136unsafe extern "C" {
1137 pub fn JS_GetPrototype(ctx: *mut JSContext, val: JSValue) -> JSValue;
1138}
1139unsafe extern "C" {
1140 pub fn JS_GetLength(ctx: *mut JSContext, obj: JSValue, pres: *mut i64) -> ::core::ffi::c_int;
1141}
1142unsafe extern "C" {
1143 pub fn JS_SetLength(ctx: *mut JSContext, obj: JSValue, len: i64) -> ::core::ffi::c_int;
1144}
1145unsafe extern "C" {
1146 pub fn JS_SealObject(ctx: *mut JSContext, obj: JSValue) -> ::core::ffi::c_int;
1147}
1148unsafe extern "C" {
1149 pub fn JS_FreezeObject(ctx: *mut JSContext, obj: JSValue) -> ::core::ffi::c_int;
1150}
1151unsafe extern "C" {
1152 pub fn JS_GetOwnPropertyNames(
1153 ctx: *mut JSContext,
1154 ptab: *mut *mut JSPropertyEnum,
1155 plen: *mut u32,
1156 obj: JSValue,
1157 flags: ::core::ffi::c_int,
1158 ) -> ::core::ffi::c_int;
1159}
1160unsafe extern "C" {
1161 pub fn JS_GetOwnProperty(
1162 ctx: *mut JSContext,
1163 desc: *mut JSPropertyDescriptor,
1164 obj: JSValue,
1165 prop: JSAtom,
1166 ) -> ::core::ffi::c_int;
1167}
1168unsafe extern "C" {
1169 pub fn JS_FreePropertyEnum(ctx: *mut JSContext, tab: *mut JSPropertyEnum, len: u32);
1170}
1171unsafe extern "C" {
1172 pub fn JS_Call(
1173 ctx: *mut JSContext,
1174 func_obj: JSValue,
1175 this_obj: JSValue,
1176 argc: ::core::ffi::c_int,
1177 argv: *mut JSValue,
1178 ) -> JSValue;
1179}
1180unsafe extern "C" {
1181 pub fn JS_Invoke(
1182 ctx: *mut JSContext,
1183 this_val: JSValue,
1184 atom: JSAtom,
1185 argc: ::core::ffi::c_int,
1186 argv: *mut JSValue,
1187 ) -> JSValue;
1188}
1189unsafe extern "C" {
1190 pub fn JS_CallConstructor(
1191 ctx: *mut JSContext,
1192 func_obj: JSValue,
1193 argc: ::core::ffi::c_int,
1194 argv: *mut JSValue,
1195 ) -> JSValue;
1196}
1197unsafe extern "C" {
1198 pub fn JS_CallConstructor2(
1199 ctx: *mut JSContext,
1200 func_obj: JSValue,
1201 new_target: JSValue,
1202 argc: ::core::ffi::c_int,
1203 argv: *mut JSValue,
1204 ) -> JSValue;
1205}
1206unsafe extern "C" {
1207 pub fn JS_DetectModule(input: *const ::core::ffi::c_char, input_len: size_t) -> bool;
1208}
1209unsafe extern "C" {
1210 pub fn JS_Eval(
1211 ctx: *mut JSContext,
1212 input: *const ::core::ffi::c_char,
1213 input_len: size_t,
1214 filename: *const ::core::ffi::c_char,
1215 eval_flags: ::core::ffi::c_int,
1216 ) -> JSValue;
1217}
1218unsafe extern "C" {
1219 pub fn JS_Eval2(
1220 ctx: *mut JSContext,
1221 input: *const ::core::ffi::c_char,
1222 input_len: size_t,
1223 options: *mut JSEvalOptions,
1224 ) -> JSValue;
1225}
1226unsafe extern "C" {
1227 pub fn JS_EvalThis(
1228 ctx: *mut JSContext,
1229 this_obj: JSValue,
1230 input: *const ::core::ffi::c_char,
1231 input_len: size_t,
1232 filename: *const ::core::ffi::c_char,
1233 eval_flags: ::core::ffi::c_int,
1234 ) -> JSValue;
1235}
1236unsafe extern "C" {
1237 pub fn JS_EvalThis2(
1238 ctx: *mut JSContext,
1239 this_obj: JSValue,
1240 input: *const ::core::ffi::c_char,
1241 input_len: size_t,
1242 options: *mut JSEvalOptions,
1243 ) -> JSValue;
1244}
1245unsafe extern "C" {
1246 pub fn JS_GetGlobalObject(ctx: *mut JSContext) -> JSValue;
1247}
1248unsafe extern "C" {
1249 pub fn JS_IsInstanceOf(ctx: *mut JSContext, val: JSValue, obj: JSValue) -> ::core::ffi::c_int;
1250}
1251unsafe extern "C" {
1252 pub fn JS_DefineProperty(
1253 ctx: *mut JSContext,
1254 this_obj: JSValue,
1255 prop: JSAtom,
1256 val: JSValue,
1257 getter: JSValue,
1258 setter: JSValue,
1259 flags: ::core::ffi::c_int,
1260 ) -> ::core::ffi::c_int;
1261}
1262unsafe extern "C" {
1263 pub fn JS_DefinePropertyValue(
1264 ctx: *mut JSContext,
1265 this_obj: JSValue,
1266 prop: JSAtom,
1267 val: JSValue,
1268 flags: ::core::ffi::c_int,
1269 ) -> ::core::ffi::c_int;
1270}
1271unsafe extern "C" {
1272 pub fn JS_DefinePropertyValueUint32(
1273 ctx: *mut JSContext,
1274 this_obj: JSValue,
1275 idx: u32,
1276 val: JSValue,
1277 flags: ::core::ffi::c_int,
1278 ) -> ::core::ffi::c_int;
1279}
1280unsafe extern "C" {
1281 pub fn JS_DefinePropertyValueStr(
1282 ctx: *mut JSContext,
1283 this_obj: JSValue,
1284 prop: *const ::core::ffi::c_char,
1285 val: JSValue,
1286 flags: ::core::ffi::c_int,
1287 ) -> ::core::ffi::c_int;
1288}
1289unsafe extern "C" {
1290 pub fn JS_DefinePropertyGetSet(
1291 ctx: *mut JSContext,
1292 this_obj: JSValue,
1293 prop: JSAtom,
1294 getter: JSValue,
1295 setter: JSValue,
1296 flags: ::core::ffi::c_int,
1297 ) -> ::core::ffi::c_int;
1298}
1299unsafe extern "C" {
1300 pub fn JS_SetOpaque(obj: JSValue, opaque: *mut ::core::ffi::c_void) -> ::core::ffi::c_int;
1301}
1302unsafe extern "C" {
1303 pub fn JS_GetOpaque(obj: JSValue, class_id: JSClassID) -> *mut ::core::ffi::c_void;
1304}
1305unsafe extern "C" {
1306 pub fn JS_GetOpaque2(
1307 ctx: *mut JSContext,
1308 obj: JSValue,
1309 class_id: JSClassID,
1310 ) -> *mut ::core::ffi::c_void;
1311}
1312unsafe extern "C" {
1313 pub fn JS_GetAnyOpaque(obj: JSValue, class_id: *mut JSClassID) -> *mut ::core::ffi::c_void;
1314}
1315unsafe extern "C" {
1316 pub fn JS_ParseJSON(
1317 ctx: *mut JSContext,
1318 buf: *const ::core::ffi::c_char,
1319 buf_len: size_t,
1320 filename: *const ::core::ffi::c_char,
1321 ) -> JSValue;
1322}
1323unsafe extern "C" {
1324 pub fn JS_JSONStringify(
1325 ctx: *mut JSContext,
1326 obj: JSValue,
1327 replacer: JSValue,
1328 space0: JSValue,
1329 ) -> JSValue;
1330}
1331pub type JSFreeArrayBufferDataFunc = ::core::option::Option<
1332 unsafe extern "C" fn(
1333 rt: *mut JSRuntime,
1334 opaque: *mut ::core::ffi::c_void,
1335 ptr: *mut ::core::ffi::c_void,
1336 ),
1337>;
1338unsafe extern "C" {
1339 pub fn JS_NewArrayBuffer(
1340 ctx: *mut JSContext,
1341 buf: *mut u8,
1342 len: size_t,
1343 free_func: JSFreeArrayBufferDataFunc,
1344 opaque: *mut ::core::ffi::c_void,
1345 is_shared: bool,
1346 ) -> JSValue;
1347}
1348unsafe extern "C" {
1349 pub fn JS_NewArrayBufferCopy(ctx: *mut JSContext, buf: *const u8, len: size_t) -> JSValue;
1350}
1351unsafe extern "C" {
1352 pub fn JS_DetachArrayBuffer(ctx: *mut JSContext, obj: JSValue);
1353}
1354unsafe extern "C" {
1355 pub fn JS_GetArrayBuffer(ctx: *mut JSContext, psize: *mut size_t, obj: JSValue) -> *mut u8;
1356}
1357unsafe extern "C" {
1358 pub fn JS_IsArrayBuffer(obj: JSValue) -> bool;
1359}
1360unsafe extern "C" {
1361 pub fn JS_GetUint8Array(ctx: *mut JSContext, psize: *mut size_t, obj: JSValue) -> *mut u8;
1362}
1363pub const JSTypedArrayEnum_JS_TYPED_ARRAY_UINT8C: JSTypedArrayEnum = 0;
1364pub const JSTypedArrayEnum_JS_TYPED_ARRAY_INT8: JSTypedArrayEnum = 1;
1365pub const JSTypedArrayEnum_JS_TYPED_ARRAY_UINT8: JSTypedArrayEnum = 2;
1366pub const JSTypedArrayEnum_JS_TYPED_ARRAY_INT16: JSTypedArrayEnum = 3;
1367pub const JSTypedArrayEnum_JS_TYPED_ARRAY_UINT16: JSTypedArrayEnum = 4;
1368pub const JSTypedArrayEnum_JS_TYPED_ARRAY_INT32: JSTypedArrayEnum = 5;
1369pub const JSTypedArrayEnum_JS_TYPED_ARRAY_UINT32: JSTypedArrayEnum = 6;
1370pub const JSTypedArrayEnum_JS_TYPED_ARRAY_BIG_INT64: JSTypedArrayEnum = 7;
1371pub const JSTypedArrayEnum_JS_TYPED_ARRAY_BIG_UINT64: JSTypedArrayEnum = 8;
1372pub const JSTypedArrayEnum_JS_TYPED_ARRAY_FLOAT16: JSTypedArrayEnum = 9;
1373pub const JSTypedArrayEnum_JS_TYPED_ARRAY_FLOAT32: JSTypedArrayEnum = 10;
1374pub const JSTypedArrayEnum_JS_TYPED_ARRAY_FLOAT64: JSTypedArrayEnum = 11;
1375pub type JSTypedArrayEnum = ::core::ffi::c_uint;
1376unsafe extern "C" {
1377 pub fn JS_NewTypedArray(
1378 ctx: *mut JSContext,
1379 argc: ::core::ffi::c_int,
1380 argv: *mut JSValue,
1381 array_type: JSTypedArrayEnum,
1382 ) -> JSValue;
1383}
1384unsafe extern "C" {
1385 pub fn JS_GetTypedArrayBuffer(
1386 ctx: *mut JSContext,
1387 obj: JSValue,
1388 pbyte_offset: *mut size_t,
1389 pbyte_length: *mut size_t,
1390 pbytes_per_element: *mut size_t,
1391 ) -> JSValue;
1392}
1393unsafe extern "C" {
1394 pub fn JS_NewUint8Array(
1395 ctx: *mut JSContext,
1396 buf: *mut u8,
1397 len: size_t,
1398 free_func: JSFreeArrayBufferDataFunc,
1399 opaque: *mut ::core::ffi::c_void,
1400 is_shared: bool,
1401 ) -> JSValue;
1402}
1403unsafe extern "C" {
1404 pub fn JS_GetTypedArrayType(obj: JSValue) -> ::core::ffi::c_int;
1405}
1406unsafe extern "C" {
1407 pub fn JS_NewUint8ArrayCopy(ctx: *mut JSContext, buf: *const u8, len: size_t) -> JSValue;
1408}
1409#[repr(C)]
1410#[derive(Debug, Copy, Clone)]
1411pub struct JSSharedArrayBufferFunctions {
1412 pub sab_alloc: ::core::option::Option<
1413 unsafe extern "C" fn(
1414 opaque: *mut ::core::ffi::c_void,
1415 size: size_t,
1416 ) -> *mut ::core::ffi::c_void,
1417 >,
1418 pub sab_free: ::core::option::Option<
1419 unsafe extern "C" fn(opaque: *mut ::core::ffi::c_void, ptr: *mut ::core::ffi::c_void),
1420 >,
1421 pub sab_dup: ::core::option::Option<
1422 unsafe extern "C" fn(opaque: *mut ::core::ffi::c_void, ptr: *mut ::core::ffi::c_void),
1423 >,
1424 pub sab_opaque: *mut ::core::ffi::c_void,
1425}
1426#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1427const _: () = {
1428 ["Size of JSSharedArrayBufferFunctions"]
1429 [::core::mem::size_of::<JSSharedArrayBufferFunctions>() - 32usize];
1430 ["Alignment of JSSharedArrayBufferFunctions"]
1431 [::core::mem::align_of::<JSSharedArrayBufferFunctions>() - 8usize];
1432 ["Offset of field: JSSharedArrayBufferFunctions::sab_alloc"]
1433 [::core::mem::offset_of!(JSSharedArrayBufferFunctions, sab_alloc) - 0usize];
1434 ["Offset of field: JSSharedArrayBufferFunctions::sab_free"]
1435 [::core::mem::offset_of!(JSSharedArrayBufferFunctions, sab_free) - 8usize];
1436 ["Offset of field: JSSharedArrayBufferFunctions::sab_dup"]
1437 [::core::mem::offset_of!(JSSharedArrayBufferFunctions, sab_dup) - 16usize];
1438 ["Offset of field: JSSharedArrayBufferFunctions::sab_opaque"]
1439 [::core::mem::offset_of!(JSSharedArrayBufferFunctions, sab_opaque) - 24usize];
1440};
1441unsafe extern "C" {
1442 pub fn JS_SetSharedArrayBufferFunctions(
1443 rt: *mut JSRuntime,
1444 sf: *const JSSharedArrayBufferFunctions,
1445 );
1446}
1447pub const JSPromiseStateEnum_JS_PROMISE_NOT_A_PROMISE: JSPromiseStateEnum = -1;
1448pub const JSPromiseStateEnum_JS_PROMISE_PENDING: JSPromiseStateEnum = 0;
1449pub const JSPromiseStateEnum_JS_PROMISE_FULFILLED: JSPromiseStateEnum = 1;
1450pub const JSPromiseStateEnum_JS_PROMISE_REJECTED: JSPromiseStateEnum = 2;
1451pub type JSPromiseStateEnum = ::core::ffi::c_int;
1452unsafe extern "C" {
1453 pub fn JS_NewPromiseCapability(ctx: *mut JSContext, resolving_funcs: *mut JSValue) -> JSValue;
1454}
1455unsafe extern "C" {
1456 pub fn JS_PromiseState(ctx: *mut JSContext, promise: JSValue) -> JSPromiseStateEnum;
1457}
1458unsafe extern "C" {
1459 pub fn JS_PromiseResult(ctx: *mut JSContext, promise: JSValue) -> JSValue;
1460}
1461unsafe extern "C" {
1462 pub fn JS_IsPromise(val: JSValue) -> bool;
1463}
1464unsafe extern "C" {
1465 pub fn JS_NewSymbol(
1466 ctx: *mut JSContext,
1467 description: *const ::core::ffi::c_char,
1468 is_global: bool,
1469 ) -> JSValue;
1470}
1471pub const JSPromiseHookType_JS_PROMISE_HOOK_INIT: JSPromiseHookType = 0;
1472pub const JSPromiseHookType_JS_PROMISE_HOOK_BEFORE: JSPromiseHookType = 1;
1473pub const JSPromiseHookType_JS_PROMISE_HOOK_AFTER: JSPromiseHookType = 2;
1474pub const JSPromiseHookType_JS_PROMISE_HOOK_RESOLVE: JSPromiseHookType = 3;
1475pub type JSPromiseHookType = ::core::ffi::c_uint;
1476pub type JSPromiseHook = ::core::option::Option<
1477 unsafe extern "C" fn(
1478 ctx: *mut JSContext,
1479 type_: JSPromiseHookType,
1480 promise: JSValue,
1481 parent_promise: JSValue,
1482 opaque: *mut ::core::ffi::c_void,
1483 ),
1484>;
1485unsafe extern "C" {
1486 pub fn JS_SetPromiseHook(
1487 rt: *mut JSRuntime,
1488 promise_hook: JSPromiseHook,
1489 opaque: *mut ::core::ffi::c_void,
1490 );
1491}
1492pub type JSHostPromiseRejectionTracker = ::core::option::Option<
1493 unsafe extern "C" fn(
1494 ctx: *mut JSContext,
1495 promise: JSValue,
1496 reason: JSValue,
1497 is_handled: bool,
1498 opaque: *mut ::core::ffi::c_void,
1499 ),
1500>;
1501unsafe extern "C" {
1502 pub fn JS_SetHostPromiseRejectionTracker(
1503 rt: *mut JSRuntime,
1504 cb: JSHostPromiseRejectionTracker,
1505 opaque: *mut ::core::ffi::c_void,
1506 );
1507}
1508pub type JSInterruptHandler = ::core::option::Option<
1509 unsafe extern "C" fn(
1510 rt: *mut JSRuntime,
1511 opaque: *mut ::core::ffi::c_void,
1512 ) -> ::core::ffi::c_int,
1513>;
1514unsafe extern "C" {
1515 pub fn JS_SetInterruptHandler(
1516 rt: *mut JSRuntime,
1517 cb: JSInterruptHandler,
1518 opaque: *mut ::core::ffi::c_void,
1519 );
1520}
1521unsafe extern "C" {
1522 pub fn JS_SetCanBlock(rt: *mut JSRuntime, can_block: bool);
1523}
1524unsafe extern "C" {
1525 pub fn JS_SetIsHTMLDDA(ctx: *mut JSContext, obj: JSValue);
1526}
1527#[repr(C)]
1528#[derive(Debug, Copy, Clone)]
1529pub struct JSModuleDef {
1530 _unused: [u8; 0],
1531}
1532pub type JSModuleNormalizeFunc = ::core::option::Option<
1533 unsafe extern "C" fn(
1534 ctx: *mut JSContext,
1535 module_base_name: *const ::core::ffi::c_char,
1536 module_name: *const ::core::ffi::c_char,
1537 opaque: *mut ::core::ffi::c_void,
1538 ) -> *mut ::core::ffi::c_char,
1539>;
1540pub type JSModuleLoaderFunc = ::core::option::Option<
1541 unsafe extern "C" fn(
1542 ctx: *mut JSContext,
1543 module_name: *const ::core::ffi::c_char,
1544 opaque: *mut ::core::ffi::c_void,
1545 ) -> *mut JSModuleDef,
1546>;
1547unsafe extern "C" {
1548 pub fn JS_SetModuleLoaderFunc(
1549 rt: *mut JSRuntime,
1550 module_normalize: JSModuleNormalizeFunc,
1551 module_loader: JSModuleLoaderFunc,
1552 opaque: *mut ::core::ffi::c_void,
1553 );
1554}
1555unsafe extern "C" {
1556 pub fn JS_GetImportMeta(ctx: *mut JSContext, m: *mut JSModuleDef) -> JSValue;
1557}
1558unsafe extern "C" {
1559 pub fn JS_GetModuleName(ctx: *mut JSContext, m: *mut JSModuleDef) -> JSAtom;
1560}
1561unsafe extern "C" {
1562 pub fn JS_GetModuleNamespace(ctx: *mut JSContext, m: *mut JSModuleDef) -> JSValue;
1563}
1564pub type JSJobFunc = ::core::option::Option<
1565 unsafe extern "C" fn(
1566 ctx: *mut JSContext,
1567 argc: ::core::ffi::c_int,
1568 argv: *mut JSValue,
1569 ) -> JSValue,
1570>;
1571unsafe extern "C" {
1572 pub fn JS_EnqueueJob(
1573 ctx: *mut JSContext,
1574 job_func: JSJobFunc,
1575 argc: ::core::ffi::c_int,
1576 argv: *mut JSValue,
1577 ) -> ::core::ffi::c_int;
1578}
1579unsafe extern "C" {
1580 pub fn JS_IsJobPending(rt: *mut JSRuntime) -> bool;
1581}
1582unsafe extern "C" {
1583 pub fn JS_ExecutePendingJob(
1584 rt: *mut JSRuntime,
1585 pctx: *mut *mut JSContext,
1586 ) -> ::core::ffi::c_int;
1587}
1588#[repr(C)]
1589#[derive(Debug, Copy, Clone)]
1590pub struct JSSABTab {
1591 pub tab: *mut *mut u8,
1592 pub len: size_t,
1593}
1594#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1595const _: () = {
1596 ["Size of JSSABTab"][::core::mem::size_of::<JSSABTab>() - 16usize];
1597 ["Alignment of JSSABTab"][::core::mem::align_of::<JSSABTab>() - 8usize];
1598 ["Offset of field: JSSABTab::tab"][::core::mem::offset_of!(JSSABTab, tab) - 0usize];
1599 ["Offset of field: JSSABTab::len"][::core::mem::offset_of!(JSSABTab, len) - 8usize];
1600};
1601unsafe extern "C" {
1602 pub fn JS_WriteObject(
1603 ctx: *mut JSContext,
1604 psize: *mut size_t,
1605 obj: JSValue,
1606 flags: ::core::ffi::c_int,
1607 ) -> *mut u8;
1608}
1609unsafe extern "C" {
1610 pub fn JS_WriteObject2(
1611 ctx: *mut JSContext,
1612 psize: *mut size_t,
1613 obj: JSValue,
1614 flags: ::core::ffi::c_int,
1615 psab_tab: *mut JSSABTab,
1616 ) -> *mut u8;
1617}
1618unsafe extern "C" {
1619 pub fn JS_ReadObject(
1620 ctx: *mut JSContext,
1621 buf: *const u8,
1622 buf_len: size_t,
1623 flags: ::core::ffi::c_int,
1624 ) -> JSValue;
1625}
1626unsafe extern "C" {
1627 pub fn JS_ReadObject2(
1628 ctx: *mut JSContext,
1629 buf: *const u8,
1630 buf_len: size_t,
1631 flags: ::core::ffi::c_int,
1632 psab_tab: *mut JSSABTab,
1633 ) -> JSValue;
1634}
1635unsafe extern "C" {
1636 pub fn JS_EvalFunction(ctx: *mut JSContext, fun_obj: JSValue) -> JSValue;
1637}
1638unsafe extern "C" {
1639 pub fn JS_ResolveModule(ctx: *mut JSContext, obj: JSValue) -> ::core::ffi::c_int;
1640}
1641unsafe extern "C" {
1642 pub fn JS_GetScriptOrModuleName(
1643 ctx: *mut JSContext,
1644 n_stack_levels: ::core::ffi::c_int,
1645 ) -> JSAtom;
1646}
1647unsafe extern "C" {
1648 pub fn JS_LoadModule(
1649 ctx: *mut JSContext,
1650 basename: *const ::core::ffi::c_char,
1651 filename: *const ::core::ffi::c_char,
1652 ) -> JSValue;
1653}
1654pub const JSCFunctionEnum_JS_CFUNC_generic: JSCFunctionEnum = 0;
1655pub const JSCFunctionEnum_JS_CFUNC_generic_magic: JSCFunctionEnum = 1;
1656pub const JSCFunctionEnum_JS_CFUNC_constructor: JSCFunctionEnum = 2;
1657pub const JSCFunctionEnum_JS_CFUNC_constructor_magic: JSCFunctionEnum = 3;
1658pub const JSCFunctionEnum_JS_CFUNC_constructor_or_func: JSCFunctionEnum = 4;
1659pub const JSCFunctionEnum_JS_CFUNC_constructor_or_func_magic: JSCFunctionEnum = 5;
1660pub const JSCFunctionEnum_JS_CFUNC_f_f: JSCFunctionEnum = 6;
1661pub const JSCFunctionEnum_JS_CFUNC_f_f_f: JSCFunctionEnum = 7;
1662pub const JSCFunctionEnum_JS_CFUNC_getter: JSCFunctionEnum = 8;
1663pub const JSCFunctionEnum_JS_CFUNC_setter: JSCFunctionEnum = 9;
1664pub const JSCFunctionEnum_JS_CFUNC_getter_magic: JSCFunctionEnum = 10;
1665pub const JSCFunctionEnum_JS_CFUNC_setter_magic: JSCFunctionEnum = 11;
1666pub const JSCFunctionEnum_JS_CFUNC_iterator_next: JSCFunctionEnum = 12;
1667pub type JSCFunctionEnum = ::core::ffi::c_uint;
1668#[repr(C)]
1669#[derive(Copy, Clone)]
1670pub union JSCFunctionType {
1671 pub generic: JSCFunction,
1672 pub generic_magic: ::core::option::Option<
1673 unsafe extern "C" fn(
1674 ctx: *mut JSContext,
1675 this_val: JSValue,
1676 argc: ::core::ffi::c_int,
1677 argv: *mut JSValue,
1678 magic: ::core::ffi::c_int,
1679 ) -> JSValue,
1680 >,
1681 pub constructor: JSCFunction,
1682 pub constructor_magic: ::core::option::Option<
1683 unsafe extern "C" fn(
1684 ctx: *mut JSContext,
1685 new_target: JSValue,
1686 argc: ::core::ffi::c_int,
1687 argv: *mut JSValue,
1688 magic: ::core::ffi::c_int,
1689 ) -> JSValue,
1690 >,
1691 pub constructor_or_func: JSCFunction,
1692 pub f_f: ::core::option::Option<unsafe extern "C" fn(arg1: f64) -> f64>,
1693 pub f_f_f: ::core::option::Option<unsafe extern "C" fn(arg1: f64, arg2: f64) -> f64>,
1694 pub getter: ::core::option::Option<
1695 unsafe extern "C" fn(ctx: *mut JSContext, this_val: JSValue) -> JSValue,
1696 >,
1697 pub setter: ::core::option::Option<
1698 unsafe extern "C" fn(ctx: *mut JSContext, this_val: JSValue, val: JSValue) -> JSValue,
1699 >,
1700 pub getter_magic: ::core::option::Option<
1701 unsafe extern "C" fn(
1702 ctx: *mut JSContext,
1703 this_val: JSValue,
1704 magic: ::core::ffi::c_int,
1705 ) -> JSValue,
1706 >,
1707 pub setter_magic: ::core::option::Option<
1708 unsafe extern "C" fn(
1709 ctx: *mut JSContext,
1710 this_val: JSValue,
1711 val: JSValue,
1712 magic: ::core::ffi::c_int,
1713 ) -> JSValue,
1714 >,
1715 pub iterator_next: ::core::option::Option<
1716 unsafe extern "C" fn(
1717 ctx: *mut JSContext,
1718 this_val: JSValue,
1719 argc: ::core::ffi::c_int,
1720 argv: *mut JSValue,
1721 pdone: *mut ::core::ffi::c_int,
1722 magic: ::core::ffi::c_int,
1723 ) -> JSValue,
1724 >,
1725}
1726#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1727const _: () = {
1728 ["Size of JSCFunctionType"][::core::mem::size_of::<JSCFunctionType>() - 8usize];
1729 ["Alignment of JSCFunctionType"][::core::mem::align_of::<JSCFunctionType>() - 8usize];
1730 ["Offset of field: JSCFunctionType::generic"]
1731 [::core::mem::offset_of!(JSCFunctionType, generic) - 0usize];
1732 ["Offset of field: JSCFunctionType::generic_magic"]
1733 [::core::mem::offset_of!(JSCFunctionType, generic_magic) - 0usize];
1734 ["Offset of field: JSCFunctionType::constructor"]
1735 [::core::mem::offset_of!(JSCFunctionType, constructor) - 0usize];
1736 ["Offset of field: JSCFunctionType::constructor_magic"]
1737 [::core::mem::offset_of!(JSCFunctionType, constructor_magic) - 0usize];
1738 ["Offset of field: JSCFunctionType::constructor_or_func"]
1739 [::core::mem::offset_of!(JSCFunctionType, constructor_or_func) - 0usize];
1740 ["Offset of field: JSCFunctionType::f_f"]
1741 [::core::mem::offset_of!(JSCFunctionType, f_f) - 0usize];
1742 ["Offset of field: JSCFunctionType::f_f_f"]
1743 [::core::mem::offset_of!(JSCFunctionType, f_f_f) - 0usize];
1744 ["Offset of field: JSCFunctionType::getter"]
1745 [::core::mem::offset_of!(JSCFunctionType, getter) - 0usize];
1746 ["Offset of field: JSCFunctionType::setter"]
1747 [::core::mem::offset_of!(JSCFunctionType, setter) - 0usize];
1748 ["Offset of field: JSCFunctionType::getter_magic"]
1749 [::core::mem::offset_of!(JSCFunctionType, getter_magic) - 0usize];
1750 ["Offset of field: JSCFunctionType::setter_magic"]
1751 [::core::mem::offset_of!(JSCFunctionType, setter_magic) - 0usize];
1752 ["Offset of field: JSCFunctionType::iterator_next"]
1753 [::core::mem::offset_of!(JSCFunctionType, iterator_next) - 0usize];
1754};
1755unsafe extern "C" {
1756 pub fn JS_NewCFunction2(
1757 ctx: *mut JSContext,
1758 func: JSCFunction,
1759 name: *const ::core::ffi::c_char,
1760 length: ::core::ffi::c_int,
1761 cproto: JSCFunctionEnum,
1762 magic: ::core::ffi::c_int,
1763 ) -> JSValue;
1764}
1765unsafe extern "C" {
1766 pub fn JS_NewCFunction3(
1767 ctx: *mut JSContext,
1768 func: JSCFunction,
1769 name: *const ::core::ffi::c_char,
1770 length: ::core::ffi::c_int,
1771 cproto: JSCFunctionEnum,
1772 magic: ::core::ffi::c_int,
1773 proto_val: JSValue,
1774 ) -> JSValue;
1775}
1776unsafe extern "C" {
1777 pub fn JS_NewCFunctionData(
1778 ctx: *mut JSContext,
1779 func: JSCFunctionData,
1780 length: ::core::ffi::c_int,
1781 magic: ::core::ffi::c_int,
1782 data_len: ::core::ffi::c_int,
1783 data: *mut JSValue,
1784 ) -> JSValue;
1785}
1786unsafe extern "C" {
1787 pub fn JS_NewCFunctionData2(
1788 ctx: *mut JSContext,
1789 func: JSCFunctionData,
1790 name: *const ::core::ffi::c_char,
1791 length: ::core::ffi::c_int,
1792 magic: ::core::ffi::c_int,
1793 data_len: ::core::ffi::c_int,
1794 data: *mut JSValue,
1795 ) -> JSValue;
1796}
1797pub type JSCClosureFinalizerFunc =
1798 ::core::option::Option<unsafe extern "C" fn(arg1: *mut ::core::ffi::c_void)>;
1799unsafe extern "C" {
1800 pub fn JS_NewCClosure(
1801 ctx: *mut JSContext,
1802 func: JSCClosure,
1803 name: *const ::core::ffi::c_char,
1804 opaque_finalize: JSCClosureFinalizerFunc,
1805 length: ::core::ffi::c_int,
1806 magic: ::core::ffi::c_int,
1807 opaque: *mut ::core::ffi::c_void,
1808 ) -> JSValue;
1809}
1810unsafe extern "C" {
1811 pub fn JS_SetConstructor(ctx: *mut JSContext, func_obj: JSValue, proto: JSValue);
1812}
1813#[repr(C)]
1814#[derive(Copy, Clone)]
1815pub struct JSCFunctionListEntry {
1816 pub name: *const ::core::ffi::c_char,
1817 pub prop_flags: u8,
1818 pub def_type: u8,
1819 pub magic: i16,
1820 pub u: JSCFunctionListEntry__bindgen_ty_1,
1821}
1822#[repr(C)]
1823#[derive(Copy, Clone)]
1824pub union JSCFunctionListEntry__bindgen_ty_1 {
1825 pub func: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1,
1826 pub getset: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2,
1827 pub alias: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3,
1828 pub prop_list: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4,
1829 pub str_: *const ::core::ffi::c_char,
1830 pub i32_: i32,
1831 pub i64_: i64,
1832 pub u64_: u64,
1833 pub f64_: f64,
1834}
1835#[repr(C)]
1836#[derive(Copy, Clone)]
1837pub struct JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1 {
1838 pub length: u8,
1839 pub cproto: u8,
1840 pub cfunc: JSCFunctionType,
1841}
1842#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1843const _: () = {
1844 ["Size of JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1"]
1845 [::core::mem::size_of::<JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1>() - 16usize];
1846 ["Alignment of JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1"]
1847 [::core::mem::align_of::<JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1>() - 8usize];
1848 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1::length"][::core::mem::offset_of!(
1849 JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1,
1850 length
1851 ) - 0usize];
1852 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1::cproto"][::core::mem::offset_of!(
1853 JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1,
1854 cproto
1855 ) - 1usize];
1856 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1::cfunc"]
1857 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_1, cfunc) - 8usize];
1858};
1859#[repr(C)]
1860#[derive(Copy, Clone)]
1861pub struct JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2 {
1862 pub get: JSCFunctionType,
1863 pub set: JSCFunctionType,
1864}
1865#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1866const _: () = {
1867 ["Size of JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2"]
1868 [::core::mem::size_of::<JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2>() - 16usize];
1869 ["Alignment of JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2"]
1870 [::core::mem::align_of::<JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2>() - 8usize];
1871 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2::get"]
1872 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2, get) - 0usize];
1873 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2::set"]
1874 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_2, set) - 8usize];
1875};
1876#[repr(C)]
1877#[derive(Debug, Copy, Clone)]
1878pub struct JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3 {
1879 pub name: *const ::core::ffi::c_char,
1880 pub base: ::core::ffi::c_int,
1881}
1882#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1883const _: () = {
1884 ["Size of JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3"]
1885 [::core::mem::size_of::<JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3>() - 16usize];
1886 ["Alignment of JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3"]
1887 [::core::mem::align_of::<JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3>() - 8usize];
1888 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3::name"]
1889 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3, name) - 0usize];
1890 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3::base"]
1891 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_3, base) - 8usize];
1892};
1893#[repr(C)]
1894#[derive(Debug, Copy, Clone)]
1895pub struct JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4 {
1896 pub tab: *const JSCFunctionListEntry,
1897 pub len: ::core::ffi::c_int,
1898}
1899#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1900const _: () = {
1901 ["Size of JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4"]
1902 [::core::mem::size_of::<JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4>() - 16usize];
1903 ["Alignment of JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4"]
1904 [::core::mem::align_of::<JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4>() - 8usize];
1905 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4::tab"]
1906 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4, tab) - 0usize];
1907 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4::len"]
1908 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1__bindgen_ty_4, len) - 8usize];
1909};
1910#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1911const _: () = {
1912 ["Size of JSCFunctionListEntry__bindgen_ty_1"]
1913 [::core::mem::size_of::<JSCFunctionListEntry__bindgen_ty_1>() - 16usize];
1914 ["Alignment of JSCFunctionListEntry__bindgen_ty_1"]
1915 [::core::mem::align_of::<JSCFunctionListEntry__bindgen_ty_1>() - 8usize];
1916 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1::func"]
1917 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1, func) - 0usize];
1918 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1::getset"]
1919 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1, getset) - 0usize];
1920 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1::alias"]
1921 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1, alias) - 0usize];
1922 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1::prop_list"]
1923 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1, prop_list) - 0usize];
1924 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1::str_"]
1925 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1, str_) - 0usize];
1926 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1::i32_"]
1927 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1, i32_) - 0usize];
1928 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1::i64_"]
1929 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1, i64_) - 0usize];
1930 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1::u64_"]
1931 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1, u64_) - 0usize];
1932 ["Offset of field: JSCFunctionListEntry__bindgen_ty_1::f64_"]
1933 [::core::mem::offset_of!(JSCFunctionListEntry__bindgen_ty_1, f64_) - 0usize];
1934};
1935#[allow(clippy::unnecessary_operation, clippy::identity_op)]
1936const _: () = {
1937 ["Size of JSCFunctionListEntry"][::core::mem::size_of::<JSCFunctionListEntry>() - 32usize];
1938 ["Alignment of JSCFunctionListEntry"][::core::mem::align_of::<JSCFunctionListEntry>() - 8usize];
1939 ["Offset of field: JSCFunctionListEntry::name"]
1940 [::core::mem::offset_of!(JSCFunctionListEntry, name) - 0usize];
1941 ["Offset of field: JSCFunctionListEntry::prop_flags"]
1942 [::core::mem::offset_of!(JSCFunctionListEntry, prop_flags) - 8usize];
1943 ["Offset of field: JSCFunctionListEntry::def_type"]
1944 [::core::mem::offset_of!(JSCFunctionListEntry, def_type) - 9usize];
1945 ["Offset of field: JSCFunctionListEntry::magic"]
1946 [::core::mem::offset_of!(JSCFunctionListEntry, magic) - 10usize];
1947 ["Offset of field: JSCFunctionListEntry::u"]
1948 [::core::mem::offset_of!(JSCFunctionListEntry, u) - 16usize];
1949};
1950unsafe extern "C" {
1951 pub fn JS_SetPropertyFunctionList(
1952 ctx: *mut JSContext,
1953 obj: JSValue,
1954 tab: *const JSCFunctionListEntry,
1955 len: ::core::ffi::c_int,
1956 ) -> ::core::ffi::c_int;
1957}
1958pub type JSModuleInitFunc = ::core::option::Option<
1959 unsafe extern "C" fn(ctx: *mut JSContext, m: *mut JSModuleDef) -> ::core::ffi::c_int,
1960>;
1961unsafe extern "C" {
1962 pub fn JS_NewCModule(
1963 ctx: *mut JSContext,
1964 name_str: *const ::core::ffi::c_char,
1965 func: JSModuleInitFunc,
1966 ) -> *mut JSModuleDef;
1967}
1968unsafe extern "C" {
1969 pub fn JS_AddModuleExport(
1970 ctx: *mut JSContext,
1971 m: *mut JSModuleDef,
1972 name_str: *const ::core::ffi::c_char,
1973 ) -> ::core::ffi::c_int;
1974}
1975unsafe extern "C" {
1976 pub fn JS_AddModuleExportList(
1977 ctx: *mut JSContext,
1978 m: *mut JSModuleDef,
1979 tab: *const JSCFunctionListEntry,
1980 len: ::core::ffi::c_int,
1981 ) -> ::core::ffi::c_int;
1982}
1983unsafe extern "C" {
1984 pub fn JS_SetModuleExport(
1985 ctx: *mut JSContext,
1986 m: *mut JSModuleDef,
1987 export_name: *const ::core::ffi::c_char,
1988 val: JSValue,
1989 ) -> ::core::ffi::c_int;
1990}
1991unsafe extern "C" {
1992 pub fn JS_SetModuleExportList(
1993 ctx: *mut JSContext,
1994 m: *mut JSModuleDef,
1995 tab: *const JSCFunctionListEntry,
1996 len: ::core::ffi::c_int,
1997 ) -> ::core::ffi::c_int;
1998}
1999unsafe extern "C" {
2000 pub fn JS_GetVersion() -> *const ::core::ffi::c_char;
2001}
2002unsafe extern "C" {
2003 pub fn js_std_cmd(cmd: ::core::ffi::c_int, ...) -> usize;
2004}
2005pub const __JS_ATOM_NULL: _bindgen_ty_4 = 0;
2006pub const JS_ATOM_null: _bindgen_ty_4 = 1;
2007pub const JS_ATOM_false: _bindgen_ty_4 = 2;
2008pub const JS_ATOM_true: _bindgen_ty_4 = 3;
2009pub const JS_ATOM_if: _bindgen_ty_4 = 4;
2010pub const JS_ATOM_else: _bindgen_ty_4 = 5;
2011pub const JS_ATOM_return: _bindgen_ty_4 = 6;
2012pub const JS_ATOM_var: _bindgen_ty_4 = 7;
2013pub const JS_ATOM_this: _bindgen_ty_4 = 8;
2014pub const JS_ATOM_delete: _bindgen_ty_4 = 9;
2015pub const JS_ATOM_void: _bindgen_ty_4 = 10;
2016pub const JS_ATOM_typeof: _bindgen_ty_4 = 11;
2017pub const JS_ATOM_new: _bindgen_ty_4 = 12;
2018pub const JS_ATOM_in: _bindgen_ty_4 = 13;
2019pub const JS_ATOM_instanceof: _bindgen_ty_4 = 14;
2020pub const JS_ATOM_do: _bindgen_ty_4 = 15;
2021pub const JS_ATOM_while: _bindgen_ty_4 = 16;
2022pub const JS_ATOM_for: _bindgen_ty_4 = 17;
2023pub const JS_ATOM_break: _bindgen_ty_4 = 18;
2024pub const JS_ATOM_continue: _bindgen_ty_4 = 19;
2025pub const JS_ATOM_switch: _bindgen_ty_4 = 20;
2026pub const JS_ATOM_case: _bindgen_ty_4 = 21;
2027pub const JS_ATOM_default: _bindgen_ty_4 = 22;
2028pub const JS_ATOM_throw: _bindgen_ty_4 = 23;
2029pub const JS_ATOM_try: _bindgen_ty_4 = 24;
2030pub const JS_ATOM_catch: _bindgen_ty_4 = 25;
2031pub const JS_ATOM_finally: _bindgen_ty_4 = 26;
2032pub const JS_ATOM_function: _bindgen_ty_4 = 27;
2033pub const JS_ATOM_debugger: _bindgen_ty_4 = 28;
2034pub const JS_ATOM_with: _bindgen_ty_4 = 29;
2035pub const JS_ATOM_class: _bindgen_ty_4 = 30;
2036pub const JS_ATOM_const: _bindgen_ty_4 = 31;
2037pub const JS_ATOM_enum: _bindgen_ty_4 = 32;
2038pub const JS_ATOM_export: _bindgen_ty_4 = 33;
2039pub const JS_ATOM_extends: _bindgen_ty_4 = 34;
2040pub const JS_ATOM_import: _bindgen_ty_4 = 35;
2041pub const JS_ATOM_super: _bindgen_ty_4 = 36;
2042pub const JS_ATOM_implements: _bindgen_ty_4 = 37;
2043pub const JS_ATOM_interface: _bindgen_ty_4 = 38;
2044pub const JS_ATOM_let: _bindgen_ty_4 = 39;
2045pub const JS_ATOM_package: _bindgen_ty_4 = 40;
2046pub const JS_ATOM_private: _bindgen_ty_4 = 41;
2047pub const JS_ATOM_protected: _bindgen_ty_4 = 42;
2048pub const JS_ATOM_public: _bindgen_ty_4 = 43;
2049pub const JS_ATOM_static: _bindgen_ty_4 = 44;
2050pub const JS_ATOM_yield: _bindgen_ty_4 = 45;
2051pub const JS_ATOM_await: _bindgen_ty_4 = 46;
2052pub const JS_ATOM_empty_string: _bindgen_ty_4 = 47;
2053pub const JS_ATOM_keys: _bindgen_ty_4 = 48;
2054pub const JS_ATOM_size: _bindgen_ty_4 = 49;
2055pub const JS_ATOM_length: _bindgen_ty_4 = 50;
2056pub const JS_ATOM_message: _bindgen_ty_4 = 51;
2057pub const JS_ATOM_cause: _bindgen_ty_4 = 52;
2058pub const JS_ATOM_errors: _bindgen_ty_4 = 53;
2059pub const JS_ATOM_stack: _bindgen_ty_4 = 54;
2060pub const JS_ATOM_name: _bindgen_ty_4 = 55;
2061pub const JS_ATOM_toString: _bindgen_ty_4 = 56;
2062pub const JS_ATOM_toLocaleString: _bindgen_ty_4 = 57;
2063pub const JS_ATOM_valueOf: _bindgen_ty_4 = 58;
2064pub const JS_ATOM_eval: _bindgen_ty_4 = 59;
2065pub const JS_ATOM_prototype: _bindgen_ty_4 = 60;
2066pub const JS_ATOM_constructor: _bindgen_ty_4 = 61;
2067pub const JS_ATOM_configurable: _bindgen_ty_4 = 62;
2068pub const JS_ATOM_writable: _bindgen_ty_4 = 63;
2069pub const JS_ATOM_enumerable: _bindgen_ty_4 = 64;
2070pub const JS_ATOM_value: _bindgen_ty_4 = 65;
2071pub const JS_ATOM_get: _bindgen_ty_4 = 66;
2072pub const JS_ATOM_set: _bindgen_ty_4 = 67;
2073pub const JS_ATOM_of: _bindgen_ty_4 = 68;
2074pub const JS_ATOM___proto__: _bindgen_ty_4 = 69;
2075pub const JS_ATOM_undefined: _bindgen_ty_4 = 70;
2076pub const JS_ATOM_number: _bindgen_ty_4 = 71;
2077pub const JS_ATOM_boolean: _bindgen_ty_4 = 72;
2078pub const JS_ATOM_string: _bindgen_ty_4 = 73;
2079pub const JS_ATOM_object: _bindgen_ty_4 = 74;
2080pub const JS_ATOM_symbol: _bindgen_ty_4 = 75;
2081pub const JS_ATOM_integer: _bindgen_ty_4 = 76;
2082pub const JS_ATOM_unknown: _bindgen_ty_4 = 77;
2083pub const JS_ATOM_arguments: _bindgen_ty_4 = 78;
2084pub const JS_ATOM_callee: _bindgen_ty_4 = 79;
2085pub const JS_ATOM_caller: _bindgen_ty_4 = 80;
2086pub const JS_ATOM__eval_: _bindgen_ty_4 = 81;
2087pub const JS_ATOM__ret_: _bindgen_ty_4 = 82;
2088pub const JS_ATOM__var_: _bindgen_ty_4 = 83;
2089pub const JS_ATOM__arg_var_: _bindgen_ty_4 = 84;
2090pub const JS_ATOM__with_: _bindgen_ty_4 = 85;
2091pub const JS_ATOM_lastIndex: _bindgen_ty_4 = 86;
2092pub const JS_ATOM_target: _bindgen_ty_4 = 87;
2093pub const JS_ATOM_index: _bindgen_ty_4 = 88;
2094pub const JS_ATOM_input: _bindgen_ty_4 = 89;
2095pub const JS_ATOM_defineProperties: _bindgen_ty_4 = 90;
2096pub const JS_ATOM_apply: _bindgen_ty_4 = 91;
2097pub const JS_ATOM_join: _bindgen_ty_4 = 92;
2098pub const JS_ATOM_concat: _bindgen_ty_4 = 93;
2099pub const JS_ATOM_split: _bindgen_ty_4 = 94;
2100pub const JS_ATOM_construct: _bindgen_ty_4 = 95;
2101pub const JS_ATOM_getPrototypeOf: _bindgen_ty_4 = 96;
2102pub const JS_ATOM_setPrototypeOf: _bindgen_ty_4 = 97;
2103pub const JS_ATOM_isExtensible: _bindgen_ty_4 = 98;
2104pub const JS_ATOM_preventExtensions: _bindgen_ty_4 = 99;
2105pub const JS_ATOM_has: _bindgen_ty_4 = 100;
2106pub const JS_ATOM_deleteProperty: _bindgen_ty_4 = 101;
2107pub const JS_ATOM_defineProperty: _bindgen_ty_4 = 102;
2108pub const JS_ATOM_getOwnPropertyDescriptor: _bindgen_ty_4 = 103;
2109pub const JS_ATOM_ownKeys: _bindgen_ty_4 = 104;
2110pub const JS_ATOM_add: _bindgen_ty_4 = 105;
2111pub const JS_ATOM_done: _bindgen_ty_4 = 106;
2112pub const JS_ATOM_next: _bindgen_ty_4 = 107;
2113pub const JS_ATOM_values: _bindgen_ty_4 = 108;
2114pub const JS_ATOM_source: _bindgen_ty_4 = 109;
2115pub const JS_ATOM_flags: _bindgen_ty_4 = 110;
2116pub const JS_ATOM_global: _bindgen_ty_4 = 111;
2117pub const JS_ATOM_unicode: _bindgen_ty_4 = 112;
2118pub const JS_ATOM_raw: _bindgen_ty_4 = 113;
2119pub const JS_ATOM_new_target: _bindgen_ty_4 = 114;
2120pub const JS_ATOM_this_active_func: _bindgen_ty_4 = 115;
2121pub const JS_ATOM_home_object: _bindgen_ty_4 = 116;
2122pub const JS_ATOM_computed_field: _bindgen_ty_4 = 117;
2123pub const JS_ATOM_static_computed_field: _bindgen_ty_4 = 118;
2124pub const JS_ATOM_class_fields_init: _bindgen_ty_4 = 119;
2125pub const JS_ATOM_brand: _bindgen_ty_4 = 120;
2126pub const JS_ATOM_hash_constructor: _bindgen_ty_4 = 121;
2127pub const JS_ATOM_as: _bindgen_ty_4 = 122;
2128pub const JS_ATOM_from: _bindgen_ty_4 = 123;
2129pub const JS_ATOM_fromAsync: _bindgen_ty_4 = 124;
2130pub const JS_ATOM_meta: _bindgen_ty_4 = 125;
2131pub const JS_ATOM__default_: _bindgen_ty_4 = 126;
2132pub const JS_ATOM__star_: _bindgen_ty_4 = 127;
2133pub const JS_ATOM_Module: _bindgen_ty_4 = 128;
2134pub const JS_ATOM_then: _bindgen_ty_4 = 129;
2135pub const JS_ATOM_resolve: _bindgen_ty_4 = 130;
2136pub const JS_ATOM_reject: _bindgen_ty_4 = 131;
2137pub const JS_ATOM_promise: _bindgen_ty_4 = 132;
2138pub const JS_ATOM_proxy: _bindgen_ty_4 = 133;
2139pub const JS_ATOM_revoke: _bindgen_ty_4 = 134;
2140pub const JS_ATOM_async: _bindgen_ty_4 = 135;
2141pub const JS_ATOM_exec: _bindgen_ty_4 = 136;
2142pub const JS_ATOM_groups: _bindgen_ty_4 = 137;
2143pub const JS_ATOM_indices: _bindgen_ty_4 = 138;
2144pub const JS_ATOM_status: _bindgen_ty_4 = 139;
2145pub const JS_ATOM_reason: _bindgen_ty_4 = 140;
2146pub const JS_ATOM_globalThis: _bindgen_ty_4 = 141;
2147pub const JS_ATOM_bigint: _bindgen_ty_4 = 142;
2148pub const JS_ATOM_not_equal: _bindgen_ty_4 = 143;
2149pub const JS_ATOM_timed_out: _bindgen_ty_4 = 144;
2150pub const JS_ATOM_ok: _bindgen_ty_4 = 145;
2151pub const JS_ATOM_toJSON: _bindgen_ty_4 = 146;
2152pub const JS_ATOM_maxByteLength: _bindgen_ty_4 = 147;
2153pub const JS_ATOM_Object: _bindgen_ty_4 = 148;
2154pub const JS_ATOM_Array: _bindgen_ty_4 = 149;
2155pub const JS_ATOM_Error: _bindgen_ty_4 = 150;
2156pub const JS_ATOM_Number: _bindgen_ty_4 = 151;
2157pub const JS_ATOM_String: _bindgen_ty_4 = 152;
2158pub const JS_ATOM_Boolean: _bindgen_ty_4 = 153;
2159pub const JS_ATOM_Symbol: _bindgen_ty_4 = 154;
2160pub const JS_ATOM_Arguments: _bindgen_ty_4 = 155;
2161pub const JS_ATOM_Math: _bindgen_ty_4 = 156;
2162pub const JS_ATOM_JSON: _bindgen_ty_4 = 157;
2163pub const JS_ATOM_Date: _bindgen_ty_4 = 158;
2164pub const JS_ATOM_Function: _bindgen_ty_4 = 159;
2165pub const JS_ATOM_GeneratorFunction: _bindgen_ty_4 = 160;
2166pub const JS_ATOM_ForInIterator: _bindgen_ty_4 = 161;
2167pub const JS_ATOM_RegExp: _bindgen_ty_4 = 162;
2168pub const JS_ATOM_ArrayBuffer: _bindgen_ty_4 = 163;
2169pub const JS_ATOM_SharedArrayBuffer: _bindgen_ty_4 = 164;
2170pub const JS_ATOM_Uint8ClampedArray: _bindgen_ty_4 = 165;
2171pub const JS_ATOM_Int8Array: _bindgen_ty_4 = 166;
2172pub const JS_ATOM_Uint8Array: _bindgen_ty_4 = 167;
2173pub const JS_ATOM_Int16Array: _bindgen_ty_4 = 168;
2174pub const JS_ATOM_Uint16Array: _bindgen_ty_4 = 169;
2175pub const JS_ATOM_Int32Array: _bindgen_ty_4 = 170;
2176pub const JS_ATOM_Uint32Array: _bindgen_ty_4 = 171;
2177pub const JS_ATOM_BigInt64Array: _bindgen_ty_4 = 172;
2178pub const JS_ATOM_BigUint64Array: _bindgen_ty_4 = 173;
2179pub const JS_ATOM_Float16Array: _bindgen_ty_4 = 174;
2180pub const JS_ATOM_Float32Array: _bindgen_ty_4 = 175;
2181pub const JS_ATOM_Float64Array: _bindgen_ty_4 = 176;
2182pub const JS_ATOM_DataView: _bindgen_ty_4 = 177;
2183pub const JS_ATOM_BigInt: _bindgen_ty_4 = 178;
2184pub const JS_ATOM_WeakRef: _bindgen_ty_4 = 179;
2185pub const JS_ATOM_FinalizationRegistry: _bindgen_ty_4 = 180;
2186pub const JS_ATOM_Map: _bindgen_ty_4 = 181;
2187pub const JS_ATOM_Set: _bindgen_ty_4 = 182;
2188pub const JS_ATOM_WeakMap: _bindgen_ty_4 = 183;
2189pub const JS_ATOM_WeakSet: _bindgen_ty_4 = 184;
2190pub const JS_ATOM_Iterator: _bindgen_ty_4 = 185;
2191pub const JS_ATOM_IteratorConcat: _bindgen_ty_4 = 186;
2192pub const JS_ATOM_IteratorHelper: _bindgen_ty_4 = 187;
2193pub const JS_ATOM_IteratorWrap: _bindgen_ty_4 = 188;
2194pub const JS_ATOM_Map_Iterator: _bindgen_ty_4 = 189;
2195pub const JS_ATOM_Set_Iterator: _bindgen_ty_4 = 190;
2196pub const JS_ATOM_Array_Iterator: _bindgen_ty_4 = 191;
2197pub const JS_ATOM_String_Iterator: _bindgen_ty_4 = 192;
2198pub const JS_ATOM_RegExp_String_Iterator: _bindgen_ty_4 = 193;
2199pub const JS_ATOM_Generator: _bindgen_ty_4 = 194;
2200pub const JS_ATOM_Proxy: _bindgen_ty_4 = 195;
2201pub const JS_ATOM_Promise: _bindgen_ty_4 = 196;
2202pub const JS_ATOM_PromiseResolveFunction: _bindgen_ty_4 = 197;
2203pub const JS_ATOM_PromiseRejectFunction: _bindgen_ty_4 = 198;
2204pub const JS_ATOM_AsyncFunction: _bindgen_ty_4 = 199;
2205pub const JS_ATOM_AsyncFunctionResolve: _bindgen_ty_4 = 200;
2206pub const JS_ATOM_AsyncFunctionReject: _bindgen_ty_4 = 201;
2207pub const JS_ATOM_AsyncGeneratorFunction: _bindgen_ty_4 = 202;
2208pub const JS_ATOM_AsyncGenerator: _bindgen_ty_4 = 203;
2209pub const JS_ATOM_EvalError: _bindgen_ty_4 = 204;
2210pub const JS_ATOM_RangeError: _bindgen_ty_4 = 205;
2211pub const JS_ATOM_ReferenceError: _bindgen_ty_4 = 206;
2212pub const JS_ATOM_SyntaxError: _bindgen_ty_4 = 207;
2213pub const JS_ATOM_TypeError: _bindgen_ty_4 = 208;
2214pub const JS_ATOM_URIError: _bindgen_ty_4 = 209;
2215pub const JS_ATOM_InternalError: _bindgen_ty_4 = 210;
2216pub const JS_ATOM_DOMException: _bindgen_ty_4 = 211;
2217pub const JS_ATOM_CallSite: _bindgen_ty_4 = 212;
2218pub const JS_ATOM_Private_brand: _bindgen_ty_4 = 213;
2219pub const JS_ATOM_Symbol_toPrimitive: _bindgen_ty_4 = 214;
2220pub const JS_ATOM_Symbol_iterator: _bindgen_ty_4 = 215;
2221pub const JS_ATOM_Symbol_match: _bindgen_ty_4 = 216;
2222pub const JS_ATOM_Symbol_matchAll: _bindgen_ty_4 = 217;
2223pub const JS_ATOM_Symbol_replace: _bindgen_ty_4 = 218;
2224pub const JS_ATOM_Symbol_search: _bindgen_ty_4 = 219;
2225pub const JS_ATOM_Symbol_split: _bindgen_ty_4 = 220;
2226pub const JS_ATOM_Symbol_toStringTag: _bindgen_ty_4 = 221;
2227pub const JS_ATOM_Symbol_isConcatSpreadable: _bindgen_ty_4 = 222;
2228pub const JS_ATOM_Symbol_hasInstance: _bindgen_ty_4 = 223;
2229pub const JS_ATOM_Symbol_species: _bindgen_ty_4 = 224;
2230pub const JS_ATOM_Symbol_unscopables: _bindgen_ty_4 = 225;
2231pub const JS_ATOM_Symbol_asyncIterator: _bindgen_ty_4 = 226;
2232pub const JS_ATOM_END: _bindgen_ty_4 = 227;
2233pub type _bindgen_ty_4 = ::core::ffi::c_uint;