本文整理了Java中com.eclipsesource.v8.V8Array.get()
方法的一些代码示例,展示了V8Array.get()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。V8Array.get()
方法的具体详情如下:
包路径:com.eclipsesource.v8.V8Array
类名称:V8Array
方法名:get
[英]Gets the value at a given index as a Java Object. Primitives are boxed.
[中]以Java对象的形式获取给定索引处的值。原语被装箱。
代码示例来源:origin: eclipsesource/J2V8
private Object getArrayItem(final V8Array array, final int index) {
try {
int type = array.getType(index);
switch (type) {
case INTEGER:
return array.getInteger(index);
case DOUBLE:
return array.getDouble(index);
case BOOLEAN:
return array.getBoolean(index);
case STRING:
return array.getString(index);
case V8_ARRAY:
case V8_TYPED_ARRAY:
return array.getArray(index);
case V8_OBJECT:
return array.getObject(index);
case V8_FUNCTION:
return array.getObject(index);
case V8_ARRAY_BUFFER:
return array.get(index);
case UNDEFINED:
return V8.getUndefined();
}
} catch (V8ResultUndefined e) {
// do nothing
}
return null;
}
代码示例来源:origin: jooby-project/jooby
private static JavaVoidCallback console(V8 v8, final Consumer<String> log) {
return (self, args) -> {
StringBuilder buff = new StringBuilder();
for (int i = 0; i < args.length(); i++) {
buff.append(args.get(i));
}
log.accept(buff.toString());
};
}
代码示例来源:origin: eclipsesource/J2V8
@SuppressWarnings("unchecked")
private static List<? super Object> toList(final V8Array array, final V8Map<Object> cache, final TypeAdapter adapter) {
if (array == null) {
return Collections.emptyList();
}
if (cache.containsKey(array)) {
return (List<? super Object>) cache.get(array);
}
List<? super Object> result = new ArrayList<Object>();
cache.put(array, result);
for (int i = 0; i < array.length(); i++) {
Object object = null;
int type = V8Value.UNDEFINED;
try {
object = array.get(i);
type = array.getType(i);
Object value = getValue(object, type, cache, adapter);
if (value != IGNORE) {
result.add(value);
}
} finally {
if (object instanceof Releasable) {
((Releasable) object).release();
}
}
}
return result;
}
代码示例来源:origin: jooby-project/jooby
String svgPath = params.get(0).toString();
String pngPath = params.get(1).toString();
Float w = new Float(params.getDouble(2));
Float h = new Float(params.getDouble(3));
V8Function callback = (V8Function) params.get(4);
Try.run(() -> {
try (FileReader in = new FileReader(svgPath);
代码示例来源:origin: jooby-project/jooby
private static void b64(final V8 v8) {
v8.registerJavaMethod((JavaCallback) (receiver, args) -> {
byte[] bytes = args.get(0).toString().getBytes(StandardCharsets.UTF_8);
return BaseEncoding.base64().encode(bytes);
}, "btoa");
v8.registerJavaMethod((JavaCallback) (receiver, args) -> {
byte[] atob = BaseEncoding.base64().decode(args.get(0).toString());
return new String(atob, StandardCharsets.UTF_8);
}, "atob");
}
代码示例来源:origin: eclipsesource/J2V8
int type = V8Value.UNDEFINED;
try {
object = array.get(index);
type = array.getType(index);
Object result = getValue(object, type, cache, DEFAULT_TYPE_ADAPTER);
代码示例来源:origin: eclipsesource/J2V8
@Override
public Object get(final int index) {
v8.checkThread();
checkReleased();
int type = getType();
switch (type) {
case FLOAT_32_ARRAY:
return ((Number) super.get(index)).floatValue();
case FLOAT_64_ARRAY:
return super.get(index);
case INT_32_ARRAY:
return super.get(index);
case INT_16_ARRAY:
return ((Number) super.get(index)).shortValue();
case INT_8_ARRAY:
return ((Number) super.get(index)).byteValue();
case UNSIGNED_INT_16_ARRAY:
return 0xFFFF & (Integer) super.get(index);
case UNSIGNED_INT_32_ARRAY:
return 0x00000000FFFFFFFF & ((Number) super.get(index)).longValue();
case UNSIGNED_INT_8_CLAMPED_ARRAY:
return (short) (0x00FF & ((Number) super.get(index)).byteValue());
case UNSIGNED_INT_8_ARRAY:
return (short) (0x00FF & ((Number) super.get(index)).shortValue());
}
return null;
}
代码示例来源:origin: eclipsesource/J2V8
int type = V8Value.UNDEFINED;
try {
object = array.get(index);
type = array.getType(index);
Object result = getValue(object, type, cache, adapter);
代码示例来源:origin: eclipsesource/J2V8
@Override
public void invoke(final V8Object receiver, final V8Array parameters) {
V8Function require = (V8Function) parameters.get(0);
try {
node.init(require.twin());
} finally {
require.close();
}
}
}, STARTUP_CALLBACK);
代码示例来源:origin: jooby-project/jooby
Path path = Paths.get(arguments.get(0).toString());
if (includes.stream().filter(it -> it.matches(path)).findFirst().isPresent()) {
return !excludes.stream().filter(it -> it.matches(path)).findFirst().isPresent();
代码示例来源:origin: jooby-project/jooby
private static void assets(Class<?> loader, final V8 v8) {
V8Object assets = new V8Object(v8);
v8.add("assets", assets);
assets.registerJavaMethod((JavaCallback) (receiver, args) -> {
try {
return V8Engine.readFile(loader, args.get(0).toString());
} catch (IOException ex) {
// we can't fire exceptions from Java :S
return V8.getUndefined();
}
}, "readFile");
assets.registerJavaMethod(
(JavaCallback) (receiver, args) -> V8Engine.exists(loader, args.get(0).toString()),
"exists");
assets.registerJavaMethod((JavaCallback) (receiver, args) -> {
try {
return load(loader, v8, args.get(0).toString());
} catch (Exception ex) {
// we can't fire exceptions from Java :S
return V8.getUndefined();
}
}, "load");
}
代码示例来源:origin: eclipsesource/J2V8
@Override
public Object invoke(final V8Object receiver, final V8Array parameters) {
return parameters.get(0);
}
});
代码示例来源:origin: eclipsesource/J2V8
@Test
public void testGenericPushInteger() {
V8Array array = new V8Array(v8);
array.push(new Integer(7));
assertEquals(7, array.get(0));
array.close();
}
代码示例来源:origin: eclipsesource/J2V8
@Test
public void testGenericPushFloat() {
V8Array array = new V8Array(v8);
array.push(new Float(3.14));
assertEquals(3.14, (Double) array.get(0), 0.0001);
array.close();
}
代码示例来源:origin: eclipsesource/J2V8
@Test
public void testGenericPushBoolean() {
V8Array array = new V8Array(v8);
array.push(new Boolean(true));
assertTrue((Boolean) array.get(0));
array.close();
}
代码示例来源:origin: eclipsesource/J2V8
@Test
public void testGetIsInteger() {
V8Array array = v8.executeArrayScript("foo = [7]");
Object result = array.get(0);
assertTrue(result instanceof Integer);
assertEquals(7, result);
array.close();
}
代码示例来源:origin: eclipsesource/J2V8
@Test
public void testGetIsDouble() {
V8Array array = v8.executeArrayScript("foo = [7.7]");
Object result = array.get(0);
assertTrue(result instanceof Double);
assertEquals(7.7, result);
array.close();
}
代码示例来源:origin: eclipsesource/J2V8
@Test
public void testGetIsObject() {
V8Array array = v8.executeArrayScript("foo = [{}]");
Object result = array.get(0);
assertTrue(result instanceof V8Object);
array.close();
((Releasable) result).release();
}
代码示例来源:origin: eclipsesource/J2V8
@Test
public void testGetIsArray() {
V8Array array = v8.executeArrayScript("foo = [[]]");
Object result = array.get(0);
assertTrue(result instanceof V8Array);
array.close();
((Releasable) result).release();
}
代码示例来源:origin: eclipsesource/J2V8
@Test
public void testGetTypedArrayIntValue_WithArrayBuffer() {
V8ArrayBuffer buffer = new V8ArrayBuffer(v8, 4);
v8.add("buf", buffer);
V8Array result = (V8Array) v8.executeScript("var ints = new Int16Array(buf); ints[0] = 7; ints");
assertEquals((short) 7, result.get(0));
result.close();
buffer.close();
}
内容来源于网络,如有侵权,请联系作者删除!