return realm;
}
-static JSValue js_create_from_ctor(JSContext *ctx, JSValueConst ctor,
- int class_id)
+JSValue JS_CreateFromConstructor(JSContext *ctx, JSValueConst ctor,
+ int class_id)
{
JSValue proto, obj;
JSContext *realm;
} else {
JSValue obj, ret;
/* legacy constructor behavior */
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_OBJECT);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_OBJECT);
if (JS_IsException(obj))
return JS_EXCEPTION;
ret = JS_CallInternal(ctx, func_obj, obj, new_target, argc, argv, flags);
goto fail;
JS_FreeValue(ctx, func_ret);
- obj = js_create_from_ctor(ctx, func_obj, JS_CLASS_GENERATOR);
+ obj = JS_CreateFromConstructor(ctx, func_obj, JS_CLASS_GENERATOR);
if (JS_IsException(obj))
goto fail;
JS_SetOpaque(obj, s);
goto fail;
JS_FreeValue(ctx, func_ret);
- obj = js_create_from_ctor(ctx, func_obj, JS_CLASS_ASYNC_GENERATOR);
+ obj = JS_CreateFromConstructor(ctx, func_obj, JS_CLASS_ASYNC_GENERATOR);
if (JS_IsException(obj))
goto fail;
s->generator = JS_VALUE_GET_OBJ(obj);
if (!JS_IsUndefined(new_target) &&
JS_VALUE_GET_OBJ(new_target) !=
JS_VALUE_GET_OBJ(JS_GetActiveFunction(ctx))) {
- ret = js_create_from_ctor(ctx, new_target, JS_CLASS_OBJECT);
+ ret = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_OBJECT);
} else {
int tag = JS_VALUE_GET_NORM_TAG(argv[0]);
switch(tag) {
JSValue obj;
int i;
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_ARRAY);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_ARRAY);
if (JS_IsException(obj))
return obj;
if (argc == 1 && JS_IsNumber(argv[0])) {
p->u.cfunc.c_function.generic == js_iterator_constructor) {
return JS_ThrowTypeError(ctx, "abstract class not constructable");
}
- return js_create_from_ctor(ctx, new_target, JS_CLASS_ITERATOR);
+ return JS_CreateFromConstructor(ctx, new_target, JS_CLASS_ITERATOR);
}
// note: deliberately doesn't use space-saving bit fields for
}
}
if (!JS_IsUndefined(new_target)) {
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_NUMBER);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_NUMBER);
if (!JS_IsException(obj))
JS_SetObjectData(ctx, obj, val);
return obj;
JSValue val, obj;
val = JS_NewBool(ctx, JS_ToBool(ctx, argv[0]));
if (!JS_IsUndefined(new_target)) {
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_BOOLEAN);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_BOOLEAN);
if (!JS_IsException(obj))
JS_SetObjectData(ctx, obj, val);
return obj;
if (!JS_IsUndefined(new_target)) {
JSString *p1 = JS_VALUE_GET_STRING(val);
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_STRING);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_STRING);
if (JS_IsException(obj)) {
JS_FreeValue(ctx, val);
} else {
pattern = JS_DupValue(ctx, JS_MKPTR(JS_TAG_STRING, re->pattern));
if (JS_IsUndefined(flags1)) {
bc = JS_DupValue(ctx, JS_MKPTR(JS_TAG_STRING, re->bytecode));
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_REGEXP);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_REGEXP);
if (JS_IsException(obj))
goto fail;
goto no_compilation;
goto fail;
}
}
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_REGEXP);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_REGEXP);
if (JS_IsException(obj))
goto fail;
bc = js_compile_regexp(ctx, pattern, flags);
is_set = magic & MAGIC_SET;
is_weak = ((magic & MAGIC_WEAK) != 0);
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_MAP + magic);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_MAP + magic);
if (JS_IsException(obj))
return JS_EXCEPTION;
s = js_mallocz(ctx, sizeof(*s));
executor = argv[0];
if (check_function(ctx, executor))
return JS_EXCEPTION;
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_PROMISE);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_PROMISE);
if (JS_IsException(obj))
return JS_EXCEPTION;
s = js_mallocz(ctx, sizeof(*s));
args[2] = JS_NewFloat64(ctx, val);
rv = js___date_create(ctx, JS_UNDEFINED, 3, args);
#else
- rv = js_create_from_ctor(ctx, new_target, JS_CLASS_DATE);
+ rv = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_DATE);
if (!JS_IsException(rv))
JS_SetObjectData(ctx, rv, JS_NewFloat64(ctx, val));
#endif
JSValue JS_NewDate(JSContext *ctx, double epoch_ms)
{
- JSValue obj = js_create_from_ctor(ctx, JS_UNDEFINED, JS_CLASS_DATE);
+ JSValue obj = JS_CreateFromConstructor(ctx, JS_UNDEFINED, JS_CLASS_DATE);
if (JS_IsException(obj))
return JS_EXCEPTION;
JS_SetObjectData(ctx, obj, __JS_NewFloat64(ctx, time_clip(epoch_ms)));
"resizable ArrayBuffers not supported "
"for externally managed buffers");
}
- obj = js_create_from_ctor(ctx, new_target, class_id);
+ obj = JS_CreateFromConstructor(ctx, new_target, class_id);
if (JS_IsException(obj))
return obj;
/* XXX: we are currently limited to 2 GB */
TRUE);
if (JS_IsException(buffer))
return JS_EXCEPTION;
- obj = js_create_from_ctor(ctx, JS_UNDEFINED, JS_CLASS_UINT8_ARRAY);
+ obj = JS_CreateFromConstructor(ctx, JS_UNDEFINED, JS_CLASS_UINT8_ARRAY);
if (JS_IsException(obj)) {
JS_FreeValue(ctx, buffer);
return JS_EXCEPTION;
int64_t len;
size_log2 = typed_array_size_log2(classid);
- ret = js_create_from_ctor(ctx, new_target, classid);
+ ret = JS_CreateFromConstructor(ctx, new_target, classid);
if (JS_IsException(ret))
return JS_EXCEPTION;
int size_log2;
JSArrayBuffer *src_abuf, *abuf;
- obj = js_create_from_ctor(ctx, new_target, classid);
+ obj = JS_CreateFromConstructor(ctx, new_target, classid);
if (JS_IsException(obj))
return obj;
p = JS_VALUE_GET_OBJ(src_obj);
if (JS_VALUE_GET_TAG(argv[0]) != JS_TAG_OBJECT) {
if (JS_ToIndex(ctx, &len, argv[0]))
return JS_EXCEPTION;
- obj = js_create_from_ctor(ctx, new_target, classid);
+ obj = JS_CreateFromConstructor(ctx, new_target, classid);
if (JS_IsException(obj))
return JS_EXCEPTION;
buffer = js_array_buffer_constructor1(ctx, JS_UNDEFINED,
JSObject *p = JS_VALUE_GET_OBJ(argv[0]);
if (p->class_id == JS_CLASS_ARRAY_BUFFER ||
p->class_id == JS_CLASS_SHARED_ARRAY_BUFFER) {
- obj = js_create_from_ctor(ctx, new_target, classid);
+ obj = JS_CreateFromConstructor(ctx, new_target, classid);
if (JS_IsException(obj))
return JS_EXCEPTION;
if (JS_ToIndex(ctx, &offset, argv[1]))
track_rab = array_buffer_is_resizable(abuf);
}
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_DATAVIEW);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_DATAVIEW);
if (JS_IsException(obj))
return JS_EXCEPTION;
if (abuf->detached) {
- /* could have been detached in js_create_from_ctor() */
+ /* could have been detached in JS_CreateFromConstructor() */
JS_ThrowTypeErrorDetachedArrayBuffer(ctx);
goto fail;
}
- // RAB could have been resized in js_create_from_ctor()
+ // RAB could have been resized in JS_CreateFromConstructor()
if (offset > abuf->byte_length) {
goto out_of_bound;
} else if (recompute_len) {
arg = argv[0];
if (!js_weakref_is_target(arg))
return JS_ThrowTypeError(ctx, "invalid target");
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_WEAK_REF);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_WEAK_REF);
if (JS_IsException(obj))
return JS_EXCEPTION;
JSWeakRefData *wrd = js_mallocz(ctx, sizeof(*wrd));
if (!JS_IsFunction(ctx, cb))
return JS_ThrowTypeError(ctx, "argument must be a function");
- obj = js_create_from_ctor(ctx, new_target, JS_CLASS_FINALIZATION_REGISTRY);
+ obj = JS_CreateFromConstructor(ctx, new_target, JS_CLASS_FINALIZATION_REGISTRY);
if (JS_IsException(obj))
return JS_EXCEPTION;
frd = js_mallocz(ctx, sizeof(*frd));