Package org.pkl.core.ast.type
Class TypeNode.FunctionTypeNode
- 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
-
- org.pkl.core.ast.type.TypeNode.ObjectSlotTypeNode
-
- org.pkl.core.ast.type.TypeNode.FunctionTypeNode
-
- All Implemented Interfaces:
com.oracle.truffle.api.nodes.NodeInterface,java.lang.Cloneable
- Enclosing class:
- TypeNode
public abstract static class TypeNode.FunctionTypeNode extends TypeNode.ObjectSlotTypeNode
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.pkl.core.ast.type.TypeNode
TypeNode.AnyTypeNode, TypeNode.BooleanTypeNode, TypeNode.CollectionTypeNode, TypeNode.ConstrainedTypeNode, TypeNode.DynamicTypeNode, TypeNode.FinalClassTypeNode, TypeNode.FinalModuleTypeNode, TypeNode.FloatTypeNode, TypeNode.FrameSlotTypeNode, TypeNode.FunctionClassTypeNode, TypeNode.FunctionNClassTypeNode, TypeNode.FunctionTypeNode, TypeNode.Int16TypeAliasTypeNode, TypeNode.Int32TypeAliasTypeNode, TypeNode.Int8TypeAliasTypeNode, TypeNode.IntSlotTypeNode, TypeNode.IntTypeNode, TypeNode.ListingOrMappingTypeNode, TypeNode.ListingTypeNode, TypeNode.ListTypeNode, TypeNode.MappingTypeNode, TypeNode.MapTypeNode, TypeNode.NonFinalClassTypeNode, TypeNode.NonFinalModuleTypeNode, TypeNode.NonNullTypeAliasTypeNode, TypeNode.NothingTypeNode, TypeNode.NullableTypeNode, TypeNode.NumberTypeNode, TypeNode.ObjectSlotTypeNode, TypeNode.PairTypeNode, TypeNode.SetTypeNode, TypeNode.StringLiteralTypeNode, TypeNode.StringTypeNode, TypeNode.TypeAliasTypeNode, TypeNode.TypedTypeNode, TypeNode.TypeVariableNode, TypeNode.UIntTypeAliasTypeNode, TypeNode.UnionOfStringLiteralsTypeNode, TypeNode.UnionTypeNode, TypeNode.UnknownTypeNode, TypeNode.VarArgsTypeNode, TypeNode.WriteFrameSlotTypeNode
-
-
Field Summary
-
Fields inherited from class org.pkl.core.ast.type.TypeNode.FrameSlotTypeNode
slot, writeFrameSlotNode
-
Fields inherited from class org.pkl.core.ast.PklNode
sourceSection
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedFunctionTypeNode(com.oracle.truffle.api.source.SourceSection sourceSection, TypeNode[] parameterTypeNodes, TypeNode returnTypeNode)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected PTypedoExport()protected voideval(VmFunction value)protected voidfallback(java.lang.Object value)protected VmClassgetFunctionNClass()VmTypedgetMirror()VmListgetParameterTypeMirrors()VmTypedgetReturnTypeMirror()VmClassgetVmClass()-
Methods inherited from class org.pkl.core.ast.type.TypeNode.ObjectSlotTypeNode
executeAndSet, getFrameSlotKind
-
Methods inherited from class org.pkl.core.ast.type.TypeNode.FrameSlotTypeNode
initWriteSlotNode
-
Methods inherited from class org.pkl.core.ast.type.TypeNode
createDefaultValue, execute, export, forClass, getMirror, getMirrors, getTypeArgumentMirrors, getVmTypeAlias, isNoopTypeCheck, typeMismatch
-
Methods inherited from class org.pkl.core.ast.PklNode
exceptionBuilder, getShortName, getSourceSection, toString
-
Methods 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
-
-
-
-
Method Detail
-
getVmClass
public final VmClass getVmClass()
- Overrides:
getVmClassin classTypeNode
-
getParameterTypeMirrors
public final VmList getParameterTypeMirrors()
-
getReturnTypeMirror
public final VmTyped getReturnTypeMirror()
-
eval
protected void eval(VmFunction value)
-
fallback
protected void fallback(java.lang.Object value)
-
getFunctionNClass
protected VmClass getFunctionNClass()
-
-