more fixes

This commit is contained in:
TopchetoEU 2023-08-26 12:01:02 +03:00
parent 33d96429f4
commit d05cd19414
No known key found for this signature in database
GPG Key ID: 24E57B2E9C61AD19
3 changed files with 4 additions and 3 deletions

View File

@ -449,7 +449,7 @@ public class Values {
}
if (clazz.isArray()) {
var raw = array(obj).toArray();
Object res = Array.newInstance(clazz.arrayType(), raw.length);
Object res = Array.newInstance(clazz.getComponentType(), raw.length);
for (var i = 0; i < raw.length; i++) Array.set(res, i, convert(ctx, raw[i], Object.class));
return (T)res;
}

View File

@ -31,7 +31,7 @@ public class OverloadFunction extends FunctionValue {
}
if (overload.variadic) {
var type = overload.params[overload.params.length - 1].componentType();
var type = overload.params[overload.params.length - 1].getComponentType();
var n = Math.max(args.length - end + start, 0);
Object varArg = Array.newInstance(type, n);

View File

@ -1,6 +1,7 @@
package me.topchetoeu.jscript.polyfills;
import java.util.HashSet;
import java.util.stream.Collectors;
import me.topchetoeu.jscript.engine.CallContext;
import me.topchetoeu.jscript.engine.values.ArrayValue;
@ -18,7 +19,7 @@ public class JSON {
if (val.isBoolean()) return val.bool();
if (val.isString()) return val.string();
if (val.isNumber()) return val.number();
if (val.isList()) return ArrayValue.of(val.list().stream().map(JSON::toJS).toList());
if (val.isList()) return ArrayValue.of(val.list().stream().map(JSON::toJS).collect(Collectors.toList()));
if (val.isMap()) {
var res = new ObjectValue();
for (var el : val.map().entrySet()) {