Package org.pkl.core.runtime
Class VmTyped
- java.lang.Object
-
- org.pkl.core.runtime.VmValue
-
- org.pkl.core.runtime.VmObjectLike
-
- org.pkl.core.runtime.VmObject
-
- org.pkl.core.runtime.VmTyped
-
public final class VmTyped extends VmObject
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.pkl.core.runtime.VmObjectLike
VmObjectLike.ForcedMemberValueConsumer, VmObjectLike.MemberValueConsumer
-
-
Field Summary
-
Fields inherited from class org.pkl.core.runtime.VmObject
cachedHash, cachedValues, members, parent
-
Fields inherited from class org.pkl.core.runtime.VmObjectLike
enclosingFrame, extraStorage
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> Taccept(VmValueConverter<T> converter, java.lang.Iterable<java.lang.Object> path)voidaccept(VmValueVisitor visitor)voidaddProperties(org.graalvm.collections.UnmodifiableEconomicMap<java.lang.Object,ObjectMember> properties)voidaddProperty(ObjectMember property)booleanequals(@Nullable java.lang.Object obj)Enables calling `vmValue.equals()` when not behind a Truffle boundary.Compositeexport()Exports this object to an external representation.VmMapgetClassMirrors()VmMapgetImports()ModuleInfogetModuleInfo()VmTypedgetModuleMirror()@Nullable VmTypedgetParent()Returns the parent object in the prototype chain.VmValuegetSupermoduleMirror()VmMapgetTypeAliasMirrors()VmClassgetVmClass()inthashCode()booleanisModuleObject()booleanisPrototype()voidlateInitVmClass(VmClass clazz)-
Methods inherited from class org.pkl.core.runtime.VmObject
exportMembers, force, force, forceAndIterateMemberValues, getCachedValue, getMember, getMembers, hasCachedValue, hasMember, iterateAlreadyForcedMemberValues, iterateMembers, iterateMemberValues, lateInitParent, setCachedValue, toString
-
Methods inherited from class org.pkl.core.runtime.VmObjectLike
getEnclosingFrame, getEnclosingOwner, getEnclosingReceiver, getExtraStorage, hasExtraStorage, setExtraStorage
-
Methods inherited from class org.pkl.core.runtime.VmValue
export, exportNullable, force, getPrototype, isDynamic, isListing, isMapping, isSequence, isTyped
-
-
-
-
Constructor Detail
-
VmTyped
public VmTyped(com.oracle.truffle.api.frame.MaterializedFrame enclosingFrame, @Nullable VmTyped parent, @Nullable VmClass clazz, org.graalvm.collections.UnmodifiableEconomicMap<java.lang.Object,ObjectMember> members)
-
-
Method Detail
-
lateInitVmClass
public void lateInitVmClass(VmClass clazz)
-
addProperty
public void addProperty(ObjectMember property)
-
addProperties
public void addProperties(org.graalvm.collections.UnmodifiableEconomicMap<java.lang.Object,ObjectMember> properties)
-
getVmClass
public VmClass getVmClass()
- Specified by:
getVmClassin classVmValue
-
getParent
public @Nullable VmTyped getParent()
Description copied from class:VmObjectLikeReturns the parent object in the prototype chain. For each concrete subclass X of VmOwner, the exact return type of this method is `X|VmTyped`.
-
isPrototype
public boolean isPrototype()
- Overrides:
isPrototypein classVmValue
-
isModuleObject
public boolean isModuleObject()
- Overrides:
isModuleObjectin classVmObjectLike
-
getModuleInfo
public ModuleInfo getModuleInfo()
-
getModuleMirror
public VmTyped getModuleMirror()
-
getSupermoduleMirror
public VmValue getSupermoduleMirror()
-
getImports
public VmMap getImports()
-
getClassMirrors
public VmMap getClassMirrors()
-
getTypeAliasMirrors
public VmMap getTypeAliasMirrors()
-
export
public Composite export()
Description copied from class:VmObjectLikeExports this object to an external representation. Does not export local, hidden, or external properties- Specified by:
exportin classVmObjectLike
-
accept
public void accept(VmValueVisitor visitor)
-
accept
public <T> T accept(VmValueConverter<T> converter, java.lang.Iterable<java.lang.Object> path)
-
equals
public boolean equals(@Nullable java.lang.Object obj)
Description copied from class:VmValueEnables calling `vmValue.equals()` when not behind a Truffle boundary.
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-