Class SLWritePropertyNode

All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode, com.oracle.truffle.api.nodes.NodeInterface, Cloneable

public abstract class SLWritePropertyNode extends SLExpressionNode
The node for writing a property of an object. When executed, this node:
  1. evaluates the object expression on the left hand side of the object access operator
  2. evaluates the property name
  3. evaluates the value expression on the right hand side of the assignment operator
  4. writes the named property
  5. returns the written value
  • Field Details

  • Constructor Details

    • SLWritePropertyNode

      public SLWritePropertyNode()
  • Method Details

    • writeArray

      public static Object writeArray(Object receiver, Object index, Object value, com.oracle.truffle.api.nodes.Node node, com.oracle.truffle.api.interop.InteropLibrary arrays, com.oracle.truffle.api.interop.InteropLibrary numbers)
    • writeSLObject

      public static Object writeSLObject(SLObject receiver, Object name, Object value, com.oracle.truffle.api.nodes.Node node, com.oracle.truffle.api.object.DynamicObjectLibrary objectLibrary, SLToTruffleStringNode toTruffleStringNode)
    • writeObject

      public static Object writeObject(Object receiver, Object name, Object value, com.oracle.truffle.api.nodes.Node node, com.oracle.truffle.api.interop.InteropLibrary objectLibrary, SLToMemberNode asMember)
    • isSLObject

      public static boolean isSLObject(Object receiver)