public class ObjectLiteralNode extends JavaScriptNode
| Modifier and Type | Class and Description |
|---|---|
static class |
ObjectLiteralNode.ComputedObjectLiteralDataMemberNode |
static class |
ObjectLiteralNode.MakeMethodNode |
static class |
ObjectLiteralNode.ObjectLiteralMemberNode |
INTERMEDIATE_VALUE| Constructor and Description |
|---|
ObjectLiteralNode(ObjectLiteralNode.ObjectLiteralMemberNode[] members,
CreateObjectNode objectCreateNode) |
| Modifier and Type | Method and Description |
|---|---|
protected JavaScriptNode |
copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags) |
static ObjectLiteralNode |
create(JSContext context,
ObjectLiteralNode.ObjectLiteralMemberNode[] members) |
com.oracle.truffle.api.object.DynamicObject |
execute(com.oracle.truffle.api.frame.VirtualFrame frame)
Executes this node using the specified context and frame and returns the result value.
|
com.oracle.truffle.api.object.DynamicObject |
executeWithObject(com.oracle.truffle.api.frame.VirtualFrame frame,
com.oracle.truffle.api.object.DynamicObject ret) |
Object |
getNodeObject() |
boolean |
hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag) |
boolean |
isResultAlwaysOfType(Class<?> clazz) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newAccessorMember(Object name,
boolean isStatic,
int attributes,
JavaScriptNode getterNode,
JavaScriptNode setterNode) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newAccessorMember(String name,
boolean isStatic,
boolean enumerable,
JavaScriptNode getterNode,
JavaScriptNode setterNode) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newComputedAccessorMember(JavaScriptNode name,
boolean isStatic,
boolean enumerable,
JavaScriptNode getter,
JavaScriptNode setter) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newComputedDataMember(JavaScriptNode name,
boolean isStatic,
boolean enumerable,
JavaScriptNode valueNode,
boolean isField,
boolean isAnonymousFunctionDefinition) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newComputedDataMember(JavaScriptNode name,
boolean isStatic,
int attributes,
JavaScriptNode valueNode) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newDataMember(Object name,
boolean isStatic,
int attributes,
JavaScriptNode valueNode) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newDataMember(String name,
boolean isStatic,
boolean enumerable,
JavaScriptNode valueNode,
boolean isField) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newPrivateAccessorMember(boolean isStatic,
JavaScriptNode getterNode,
JavaScriptNode setterNode,
JSWriteFrameSlotNode writePrivateNode) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newPrivateFieldMember(JavaScriptNode name,
boolean isStatic,
JavaScriptNode valueNode,
JSWriteFrameSlotNode writePrivateNode) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newPrivateMethodMember(boolean isStatic,
JavaScriptNode valueNode,
JSWriteFrameSlotNode writePrivateNode) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newProtoMember(String name,
boolean isStatic,
JavaScriptNode valueNode) |
static ObjectLiteralNode.ObjectLiteralMemberNode |
newSpreadObjectMember(boolean isStatic,
JavaScriptNode valueNode) |
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, createWrapper, executeBoolean, executeDouble, executeInt, executeLong, executeSafeInteger, executeString, executeVoid, expressionToString, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, onReplace, removeSourceSection, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, lookupContextReference, lookupLanguageReference, notifyInserted, replace, replace, reportPolymorphicSpecializepublic ObjectLiteralNode(ObjectLiteralNode.ObjectLiteralMemberNode[] members, CreateObjectNode objectCreateNode)
public boolean hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag)
hasTag in interface com.oracle.truffle.api.instrumentation.InstrumentableNodehasTag in class JavaScriptNodepublic Object getNodeObject()
public static ObjectLiteralNode.ObjectLiteralMemberNode newDataMember(String name, boolean isStatic, boolean enumerable, JavaScriptNode valueNode, boolean isField)
public static ObjectLiteralNode.ObjectLiteralMemberNode newAccessorMember(String name, boolean isStatic, boolean enumerable, JavaScriptNode getterNode, JavaScriptNode setterNode)
public static ObjectLiteralNode.ObjectLiteralMemberNode newComputedDataMember(JavaScriptNode name, boolean isStatic, boolean enumerable, JavaScriptNode valueNode, boolean isField, boolean isAnonymousFunctionDefinition)
public static ObjectLiteralNode.ObjectLiteralMemberNode newComputedAccessorMember(JavaScriptNode name, boolean isStatic, boolean enumerable, JavaScriptNode getter, JavaScriptNode setter)
public static ObjectLiteralNode.ObjectLiteralMemberNode newDataMember(Object name, boolean isStatic, int attributes, JavaScriptNode valueNode)
public static ObjectLiteralNode.ObjectLiteralMemberNode newAccessorMember(Object name, boolean isStatic, int attributes, JavaScriptNode getterNode, JavaScriptNode setterNode)
public static ObjectLiteralNode.ObjectLiteralMemberNode newComputedDataMember(JavaScriptNode name, boolean isStatic, int attributes, JavaScriptNode valueNode)
public static ObjectLiteralNode.ObjectLiteralMemberNode newPrivateFieldMember(JavaScriptNode name, boolean isStatic, JavaScriptNode valueNode, JSWriteFrameSlotNode writePrivateNode)
public static ObjectLiteralNode.ObjectLiteralMemberNode newPrivateMethodMember(boolean isStatic, JavaScriptNode valueNode, JSWriteFrameSlotNode writePrivateNode)
public static ObjectLiteralNode.ObjectLiteralMemberNode newPrivateAccessorMember(boolean isStatic, JavaScriptNode getterNode, JavaScriptNode setterNode, JSWriteFrameSlotNode writePrivateNode)
public static ObjectLiteralNode.ObjectLiteralMemberNode newProtoMember(String name, boolean isStatic, JavaScriptNode valueNode)
public static ObjectLiteralNode.ObjectLiteralMemberNode newSpreadObjectMember(boolean isStatic, JavaScriptNode valueNode)
public static ObjectLiteralNode create(JSContext context, ObjectLiteralNode.ObjectLiteralMemberNode[] members)
public com.oracle.truffle.api.object.DynamicObject execute(com.oracle.truffle.api.frame.VirtualFrame frame)
JavaScriptNodeexecute in class JavaScriptNodeframe - the frame of the currently executing guest language methodpublic com.oracle.truffle.api.object.DynamicObject executeWithObject(com.oracle.truffle.api.frame.VirtualFrame frame,
com.oracle.truffle.api.object.DynamicObject ret)
public boolean isResultAlwaysOfType(Class<?> clazz)
isResultAlwaysOfType in class JavaScriptNodeprotected JavaScriptNode copyUninitialized(Set<Class<? extends com.oracle.truffle.api.instrumentation.Tag>> materializedTags)
copyUninitialized in class JavaScriptNode