Class GetClassNode

  • All Implemented Interfaces:
    com.oracle.truffle.api.nodes.NodeInterface, java.lang.Cloneable

    public abstract class GetClassNode
    extends ExpressionNode
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node

        com.oracle.truffle.api.nodes.Node.Child, com.oracle.truffle.api.nodes.Node.Children
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected GetClassNode()  
      protected GetClassNode​(com.oracle.truffle.api.source.SourceSection sourceSection)  
    • Constructor Detail

      • GetClassNode

        protected GetClassNode​(com.oracle.truffle.api.source.SourceSection sourceSection)
      • GetClassNode

        protected GetClassNode()
    • Method Detail

      • executeWith

        public abstract VmClass executeWith​(com.oracle.truffle.api.frame.VirtualFrame frame,
                                            java.lang.Object value)
        When only using this execute method, pass `null` for `valueNode` to GetClassNodeGen.create(com.oracle.truffle.api.source.SourceSection, org.pkl.core.ast.ExpressionNode).
      • evalString

        protected VmClass evalString​(java.lang.String value)
      • evalInt

        protected VmClass evalInt​(long value)
      • evalFloat

        protected VmClass evalFloat​(double value)
      • evalBoolean

        protected VmClass evalBoolean​(boolean value)
      • evalVmValue

        protected VmClass evalVmValue​(java.lang.Object value,
                                      java.lang.Class<? extends VmValue> cachedClass)
      • getValueClass

        protected static java.lang.Class<? extends VmValue> getValueClass​(java.lang.Object value)