public abstract class JSFunctionObject extends JSNonProxyObject
Modifier and Type | Class and Description |
---|---|
static class |
JSFunctionObject.Bound
Bound function exotic object.
|
static class |
JSFunctionObject.BoundOrWrapped
Bound or wrapped function exotic object.
|
static class |
JSFunctionObject.Unbound |
static class |
JSFunctionObject.Wrapped
Wrapped function exotic object.
|
JSObject.GetMembers
JSDynamicObject.IsIdenticalOrUndefined
CONSTRUCTOR, EMPTY_STRING_ARRAY, HIDDEN_PROTO, NO_SUCH_METHOD_NAME, NO_SUCH_PROPERTY_NAME, PROTO, PROTOTYPE
Modifier | Constructor and Description |
---|---|
protected |
JSFunctionObject(com.oracle.truffle.api.object.Shape shape,
JSFunctionData functionData,
com.oracle.truffle.api.frame.MaterializedFrame enclosingFrame,
JSRealm realm,
Object classPrototype) |
Modifier and Type | Method and Description |
---|---|
static JSFunctionObject |
create(com.oracle.truffle.api.object.Shape shape,
JSFunctionData functionData,
com.oracle.truffle.api.frame.MaterializedFrame enclosingFrame,
JSRealm realm,
Object classPrototype) |
static JSFunctionObject |
createBound(com.oracle.truffle.api.object.Shape shape,
JSFunctionData functionData,
JSRealm realm,
Object classPrototype,
Object boundTargetFunction,
Object boundThis,
Object[] boundArguments) |
static JSFunctionObject |
createWrapped(com.oracle.truffle.api.object.Shape shape,
JSFunctionData functionData,
JSRealm realm,
Object boundTargetFunction) |
Object |
execute(Object[] args,
com.oracle.truffle.api.interop.InteropLibrary self,
JSInteropExecuteNode callNode,
ExportValueNode exportNode) |
com.oracle.truffle.api.strings.TruffleString |
getBuiltinToStringTag()
Returns builtinTag from step 14 of ES6+ 19.1.3.6.
|
com.oracle.truffle.api.strings.TruffleString |
getClassName()
The [[Class]] internal property.
|
Object |
getClassPrototype() |
com.oracle.truffle.api.frame.MaterializedFrame |
getEnclosingFrame() |
JSFunctionData |
getFunctionData() |
Object |
getLexicalThis() |
Object |
getMetaObjectName() |
JSRealm |
getRealm() |
com.oracle.truffle.api.source.SourceSection |
getSourceLocation() |
boolean |
hasSourceLocation() |
Object |
instantiate(Object[] args,
com.oracle.truffle.api.interop.InteropLibrary self,
JSInteropInstantiateNode callNode,
ExportValueNode exportNode) |
boolean |
isExecutable(IsCallableNode isCallable) |
boolean |
isInstantiable() |
boolean |
isMetaInstance(Object instance) |
boolean |
isMetaObject() |
void |
setClassPrototype(Object classPrototype) |
getMetaObject, getMetaObjectImpl, hasMetaObject
defineOwnProperty, delete, delete, getHelper, getHelper, getMethodHelper, getOwnHelper, getOwnHelper, getOwnProperty, getOwnPropertyKeys, getPrototypeOf, hasOnlyShapeProperties, hasOwnProperty, hasOwnProperty, hasProperty, hasProperty, isExtensible, preventExtensions, set, set, setIntegrityLevel, setPrototypeOf, testIntegrityLevel, toDisplayStringImpl
copyWithoutProperties, defaultToString, defineOwnProperty, defineOwnProperty, delete, delete, delete, delete, delete, delete, enumerableOwnNames, filterEnumerableNames, get, get, get, get, getArray, getClassName, getIterator, getJSClass, getJSContext, getLanguage, getMethod, getOrDefault, getOrDefault, getOrDefault, getOrDefault, getOwnProperty, getOwnProperty, getPrototype, getPrototype, getUncachedRead, getUncachedWrite, getWithReceiver, hasArray, hasIterator, hasLanguage, hasMemberReadSideEffects, hasMembers, hasMemberWriteSideEffects, hasOwnProperty, hasOwnProperty, hasOwnProperty, hasOwnProperty, hasProperty, hasProperty, hasProperty, hasProperty, invokeMember, isExtensible, isExtensible, isFrozen, isJSObject, isMemberInsertable, isMemberInvocable, isMemberModifiable, isMemberReadable, isMemberRemovable, isSealed, language, ordinaryToPrimitive, ownPropertyKeys, ownPropertyKeys, preventExtensions, preventExtensions, readMember, removeMember, set, set, set, set, setArray, setIntegrityLevel, setIntegrityLevel, setPrototype, setPrototype, setWithReceiver, setWithReceiver, testIntegrityLevel, toDisplayString, toPrimitive, toPrimitive, writeMember
defaultToString, getDynamicType, getIntOrDefault, getJSClass, getJSContext, getJSSharedData, getKeyArray, getObjectFlags, getOrDefault, getOrNull, getProperty, getPropertyArray, getPropertyFlags, getValue, getValue, identityHashCode, isJSDynamicObject, ownPropertyKeys, removeKey, setJSClass, setObjectFlags, setPropertyFlags, testProperties, updatePropertyFlags
protected JSFunctionObject(com.oracle.truffle.api.object.Shape shape, JSFunctionData functionData, com.oracle.truffle.api.frame.MaterializedFrame enclosingFrame, JSRealm realm, Object classPrototype)
public final JSFunctionData getFunctionData()
public final com.oracle.truffle.api.frame.MaterializedFrame getEnclosingFrame()
public final JSRealm getRealm()
public final Object getClassPrototype()
public void setClassPrototype(Object classPrototype)
public Object getLexicalThis()
public com.oracle.truffle.api.strings.TruffleString getClassName()
JSDynamicObject
getClassName
in class JSClassObject
public com.oracle.truffle.api.strings.TruffleString getBuiltinToStringTag()
JSDynamicObject
getBuiltinToStringTag
in class JSClassObject
JSDynamicObject.defaultToString()
public final boolean isExecutable(IsCallableNode isCallable)
public final Object execute(Object[] args, com.oracle.truffle.api.interop.InteropLibrary self, JSInteropExecuteNode callNode, ExportValueNode exportNode) throws com.oracle.truffle.api.interop.UnsupportedMessageException
com.oracle.truffle.api.interop.UnsupportedMessageException
public final boolean isInstantiable()
public final Object instantiate(Object[] args, com.oracle.truffle.api.interop.InteropLibrary self, JSInteropInstantiateNode callNode, ExportValueNode exportNode) throws com.oracle.truffle.api.interop.UnsupportedMessageException
com.oracle.truffle.api.interop.UnsupportedMessageException
public final boolean hasSourceLocation()
public final com.oracle.truffle.api.source.SourceSection getSourceLocation() throws com.oracle.truffle.api.interop.UnsupportedMessageException
com.oracle.truffle.api.interop.UnsupportedMessageException
public final boolean isMetaObject()
public final Object getMetaObjectName()
public final boolean isMetaInstance(Object instance)
public static JSFunctionObject create(com.oracle.truffle.api.object.Shape shape, JSFunctionData functionData, com.oracle.truffle.api.frame.MaterializedFrame enclosingFrame, JSRealm realm, Object classPrototype)
public static JSFunctionObject createBound(com.oracle.truffle.api.object.Shape shape, JSFunctionData functionData, JSRealm realm, Object classPrototype, Object boundTargetFunction, Object boundThis, Object[] boundArguments)
public static JSFunctionObject createWrapped(com.oracle.truffle.api.object.Shape shape, JSFunctionData functionData, JSRealm realm, Object boundTargetFunction)