Class ReadPropertyNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
org.pkl.core.ast.PklNode
org.pkl.core.ast.ExpressionNode
org.pkl.core.ast.expression.member.ReadPropertyNode
- All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface,Cloneable
-
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 -
Field Summary
FieldsFields inherited from class org.pkl.core.ast.PklNode
sourceSection -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedReadPropertyNode(com.oracle.truffle.api.source.SourceSection sourceSection, Identifier propertyName) protectedReadPropertyNode(com.oracle.truffle.api.source.SourceSection sourceSection, Identifier propertyName, boolean needsConst) protectedReadPropertyNode(com.oracle.truffle.api.source.SourceSection sourceSection, Identifier propertyName, MemberLookupMode lookupMode, boolean needsConst) -
Method Summary
Modifier and TypeMethodDescriptionprotected static com.oracle.truffle.api.nodes.DirectCallNodecreateCallNode(ClassProperty resolvedProperty) protected ObjectevalObject(Object receiver, Class<? extends VmObjectLike> cachedClass, com.oracle.truffle.api.nodes.IndirectCallNode callNode) protected ObjectevalOther(Object receiver, Class<?> cachedClass, ClassProperty resolvedProperty, com.oracle.truffle.api.nodes.DirectCallNode callNode) protected static @Nullable Class<? extends VmObjectLike>getVmObjectSubclassOrNull(Object value) protected ClassPropertyresolveProperty(Object value) Methods inherited from class org.pkl.core.ast.ExpressionNode
executeBoolean, executeFloat, executeGeneric, executeIntMethods inherited from class org.pkl.core.ast.PklNode
exceptionBuilder, getShortName, getSourceSection, toStringMethods inherited from class com.oracle.truffle.api.nodes.Node
accept, adoptChildren, atomic, atomic, copy, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, onReplace, replace, replace, reportPolymorphicSpecialize
-
Field Details
-
propertyName
-
-
Constructor Details
-
ReadPropertyNode
protected ReadPropertyNode(com.oracle.truffle.api.source.SourceSection sourceSection, Identifier propertyName, MemberLookupMode lookupMode, boolean needsConst) -
ReadPropertyNode
protected ReadPropertyNode(com.oracle.truffle.api.source.SourceSection sourceSection, Identifier propertyName, boolean needsConst) -
ReadPropertyNode
protected ReadPropertyNode(com.oracle.truffle.api.source.SourceSection sourceSection, Identifier propertyName)
-
-
Method Details
-
evalObject
protected Object evalObject(Object receiver, Class<? extends VmObjectLike> cachedClass, com.oracle.truffle.api.nodes.IndirectCallNode callNode) -
evalOther
protected Object evalOther(Object receiver, Class<?> cachedClass, ClassProperty resolvedProperty, com.oracle.truffle.api.nodes.DirectCallNode callNode) -
getVmObjectSubclassOrNull
@Nullable protected static @Nullable Class<? extends VmObjectLike> getVmObjectSubclassOrNull(Object value) -
resolveProperty
-
createCallNode
protected static com.oracle.truffle.api.nodes.DirectCallNode createCallNode(ClassProperty resolvedProperty)
-