public final class JSInteropUtil extends Object
| Modifier and Type | Method and Description |
|---|---|
static Object |
call(Object function,
Object[] args) |
static Object |
construct(Object target,
Object[] args) |
static ByteBuffer |
foreignInteropBufferAsByteBuffer(Object foreignInteropBuffer,
com.oracle.truffle.api.interop.InteropLibrary interop,
JSRealm realm) |
static String |
formatError(Object error,
com.oracle.truffle.api.interop.InteropLibrary interopExc,
com.oracle.truffle.api.interop.InteropLibrary interopStr) |
static PropertyDescriptor |
getArrayElementProperty(Object object,
long index,
com.oracle.truffle.api.interop.InteropLibrary interop,
ImportValueNode importValueNode) |
static long |
getArraySize(Object foreignObj,
com.oracle.truffle.api.interop.InteropLibrary interop,
com.oracle.truffle.api.nodes.Node originatingNode) |
static PropertyDescriptor |
getExistingMemberProperty(Object object,
String key,
com.oracle.truffle.api.interop.InteropLibrary interop,
ImportValueNode importValueNode) |
static PropertyDescriptor |
getOwnProperty(Object object,
com.oracle.truffle.api.strings.TruffleString propertyKey) |
static PropertyDescriptor |
getOwnProperty(Object object,
com.oracle.truffle.api.strings.TruffleString propertyKey,
com.oracle.truffle.api.interop.InteropLibrary interop,
ImportValueNode importValueNode,
com.oracle.truffle.api.strings.TruffleString.ReadCharUTF16Node charAtNode) |
static boolean |
hasProperty(Object obj,
Object key) |
static boolean |
isBoxedPrimitive(Object receiver,
com.oracle.truffle.api.interop.InteropLibrary interop) |
static ByteBuffer |
jsInteropBufferAsByteBuffer(JSArrayBufferObject interopArrayBuffer,
com.oracle.truffle.api.interop.InteropLibrary interop,
JSRealm realm) |
static List<Object> |
keys(Object obj) |
static Object |
readArrayElementOrDefault(Object obj,
long index,
Object defaultValue) |
static Object |
readArrayElementOrDefault(Object obj,
long index,
Object defaultValue,
com.oracle.truffle.api.interop.InteropLibrary interop,
ImportValueNode importValue,
com.oracle.truffle.api.nodes.Node originatingNode) |
static Object |
readMemberOrDefault(Object obj,
Object member,
Object defaultValue) |
static Object |
readMemberOrDefault(Object obj,
Object member,
Object defaultValue,
com.oracle.truffle.api.interop.InteropLibrary interop,
ImportValueNode importValue,
com.oracle.truffle.api.nodes.Node originatingNode) |
static boolean |
remove(Object obj,
Object key) |
static boolean |
setArraySize(Object obj,
Object value,
boolean isStrict,
com.oracle.truffle.api.interop.InteropLibrary interop,
com.oracle.truffle.api.nodes.Node originatingNode,
com.oracle.truffle.api.profiles.BranchProfile errorBranch) |
static Object |
toPrimitiveOrDefaultLossless(Object obj,
Object defaultValue,
com.oracle.truffle.api.interop.InteropLibrary interop,
com.oracle.truffle.api.strings.TruffleString.SwitchEncodingNode switchEncoding,
com.oracle.truffle.api.nodes.Node originatingNode)
Converts a foreign object to a JS primitive value.
|
static Object |
toPrimitiveOrDefaultLossy(Object obj,
Object defaultValue,
com.oracle.truffle.api.interop.InteropLibrary interop,
com.oracle.truffle.api.nodes.Node originatingNode)
Converts foreign objects to JS primitive values, coercing all numbers to double precision.
|
static void |
writeMember(Object obj,
Object member,
Object value) |
static void |
writeMember(Object obj,
Object member,
Object value,
com.oracle.truffle.api.interop.InteropLibrary interop,
ExportValueNode exportValue,
com.oracle.truffle.api.nodes.Node originatingNode) |
public static long getArraySize(Object foreignObj, com.oracle.truffle.api.interop.InteropLibrary interop, com.oracle.truffle.api.nodes.Node originatingNode)
public static boolean setArraySize(Object obj, Object value, boolean isStrict, com.oracle.truffle.api.interop.InteropLibrary interop, com.oracle.truffle.api.nodes.Node originatingNode, com.oracle.truffle.api.profiles.BranchProfile errorBranch)
public static Object readMemberOrDefault(Object obj, Object member, Object defaultValue)
public static Object readMemberOrDefault(Object obj, Object member, Object defaultValue, com.oracle.truffle.api.interop.InteropLibrary interop, ImportValueNode importValue, com.oracle.truffle.api.nodes.Node originatingNode)
public static Object readArrayElementOrDefault(Object obj, long index, Object defaultValue, com.oracle.truffle.api.interop.InteropLibrary interop, ImportValueNode importValue, com.oracle.truffle.api.nodes.Node originatingNode)
public static Object readArrayElementOrDefault(Object obj, long index, Object defaultValue)
public static void writeMember(Object obj, Object member, Object value, com.oracle.truffle.api.interop.InteropLibrary interop, ExportValueNode exportValue, com.oracle.truffle.api.nodes.Node originatingNode)
public static Object toPrimitiveOrDefaultLossy(Object obj, Object defaultValue, com.oracle.truffle.api.interop.InteropLibrary interop, com.oracle.truffle.api.nodes.Node originatingNode)
public static Object toPrimitiveOrDefaultLossless(Object obj, Object defaultValue, com.oracle.truffle.api.interop.InteropLibrary interop, com.oracle.truffle.api.strings.TruffleString.SwitchEncodingNode switchEncoding, com.oracle.truffle.api.nodes.Node originatingNode)
public static boolean isBoxedPrimitive(Object receiver, com.oracle.truffle.api.interop.InteropLibrary interop)
public static PropertyDescriptor getOwnProperty(Object object, com.oracle.truffle.api.strings.TruffleString propertyKey)
public static PropertyDescriptor getOwnProperty(Object object, com.oracle.truffle.api.strings.TruffleString propertyKey, com.oracle.truffle.api.interop.InteropLibrary interop, ImportValueNode importValueNode, com.oracle.truffle.api.strings.TruffleString.ReadCharUTF16Node charAtNode)
public static PropertyDescriptor getExistingMemberProperty(Object object, String key, com.oracle.truffle.api.interop.InteropLibrary interop, ImportValueNode importValueNode) throws com.oracle.truffle.api.interop.InteropException
com.oracle.truffle.api.interop.InteropExceptionpublic static PropertyDescriptor getArrayElementProperty(Object object, long index, com.oracle.truffle.api.interop.InteropLibrary interop, ImportValueNode importValueNode) throws com.oracle.truffle.api.interop.InteropException
com.oracle.truffle.api.interop.InteropExceptionpublic static String formatError(Object error, com.oracle.truffle.api.interop.InteropLibrary interopExc, com.oracle.truffle.api.interop.InteropLibrary interopStr)
public static ByteBuffer jsInteropBufferAsByteBuffer(JSArrayBufferObject interopArrayBuffer, com.oracle.truffle.api.interop.InteropLibrary interop, JSRealm realm)
public static ByteBuffer foreignInteropBufferAsByteBuffer(Object foreignInteropBuffer, com.oracle.truffle.api.interop.InteropLibrary interop, JSRealm realm)