Class TypeNode.FrameSlotTypeNode

java.lang.Object
com.oracle.truffle.api.nodes.Node
org.pkl.core.ast.PklNode
org.pkl.core.ast.type.TypeNode
org.pkl.core.ast.type.TypeNode.FrameSlotTypeNode
All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface, Cloneable
Direct Known Subclasses:
TypeNode.BooleanTypeNode, TypeNode.FloatTypeNode, TypeNode.IntSlotTypeNode, TypeNode.NumberTypeNode, TypeNode.ObjectSlotTypeNode
Enclosing class:
TypeNode

public abstract static class TypeNode.FrameSlotTypeNode extends TypeNode
Base class for types whose `executeAndSet` method assigns values to slots with `frame.setXYZ(slot, value)`.
  • Field Details

    • slot

      protected int slot
    • writeFrameSlotNode

      protected WriteFrameSlotNode writeFrameSlotNode
  • Constructor Details

    • FrameSlotTypeNode

      protected FrameSlotTypeNode(com.oracle.truffle.api.source.SourceSection sourceSection)
  • Method Details

    • initWriteSlotNode

      public TypeNode initWriteSlotNode(int slot)
      Description copied from class: TypeNode
      Initializes this node's frame slot. Called if this node is a function/method parameter type. Kept separate from constructor so that TypeNode.TypeAliasTypeNode can initialize frame slot of its cloned child node.
      Specified by:
      initWriteSlotNode in class TypeNode