Class SLInvokeNode

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

public final class SLInvokeNode extends SLExpressionNode
The node for function invocation in SL. Since SL has first class functions, the target function can be computed by an arbitrary expression. This node is responsible for evaluating this expression, as well as evaluating the arguments. The actual invocation is delegated to a InteropLibrary instance.
See Also:
  • InteropLibrary.execute(Object, Object...)
  • Constructor Details

  • Method Details

    • executeGeneric

      public Object executeGeneric(com.oracle.truffle.api.frame.VirtualFrame frame)
      Description copied from class: SLExpressionNode
      The execute method when no specialization is possible. This is the most general case, therefore it must be provided by all subclasses.
      Specified by:
      executeGeneric in class SLExpressionNode
    • hasTag

      public boolean hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag)
      Specified by:
      hasTag in interface com.oracle.truffle.api.instrumentation.InstrumentableNode
      Overrides:
      hasTag in class SLExpressionNode