Reference<T>
Original PR: https://github.com/apple/pkl/pull/1354 Author: @HT154 Created: 12/6/2025 Status: 🔄 Open
Base: main ← Head: reference-t
main
reference-t
81638a0
6db6ffc
03cd347
4f71c0c
19661d3
14a7c24
27 files changed (+1049 additions, -46 deletions)
📝 docs/modules/ROOT/partials/component-attributes.adoc (+2 -0) 📝 docs/modules/bindings-specification/pages/binary-encoding.adoc (+18 -0) 📝 pkl-core/src/main/java/org/pkl/core/PClass.java (+14 -2) 📝 pkl-core/src/main/java/org/pkl/core/TypeAlias.java (+8 -1) 📝 pkl-core/src/main/java/org/pkl/core/ast/expression/binary/SubscriptNode.java (+12 -0) 📝 pkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadPropertyNode.java (+14 -1) 📝 pkl-core/src/main/java/org/pkl/core/ast/type/TypeNode.java (+75 -0) 📝 pkl-core/src/main/java/org/pkl/core/ast/type/UnresolvedTypeNode.java (+4 -0) 📝 pkl-core/src/main/java/org/pkl/core/runtime/BaseModule.java (+52 -0) 📝 pkl-core/src/main/java/org/pkl/core/runtime/VmClass.java (+57 -39) 📝 pkl-core/src/main/java/org/pkl/core/runtime/VmPklBinaryEncoder.java (+33 -0) ➕ pkl-core/src/main/java/org/pkl/core/runtime/VmReference.java (+446 -0) 📝 pkl-core/src/main/java/org/pkl/core/runtime/VmTypeAlias.java (+2 -1) 📝 pkl-core/src/main/java/org/pkl/core/runtime/VmTypes.java (+4 -2) 📝 pkl-core/src/main/java/org/pkl/core/runtime/VmValueConverter.java (+4 -0) 📝 pkl-core/src/main/java/org/pkl/core/runtime/VmValueRenderer.java (+24 -0) 📝 pkl-core/src/main/java/org/pkl/core/runtime/VmValueVisitor.java (+4 -0) 📝 pkl-core/src/main/java/org/pkl/core/stdlib/AbstractRenderer.java (+11 -0) 📝 pkl-core/src/main/java/org/pkl/core/stdlib/PklConverter.java (+14 -0) 📝 pkl-core/src/main/java/org/pkl/core/stdlib/base/BaseNodes.java (+9 -0)
docs/modules/ROOT/partials/component-attributes.adoc
docs/modules/bindings-specification/pages/binary-encoding.adoc
pkl-core/src/main/java/org/pkl/core/PClass.java
pkl-core/src/main/java/org/pkl/core/TypeAlias.java
pkl-core/src/main/java/org/pkl/core/ast/expression/binary/SubscriptNode.java
pkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadPropertyNode.java
pkl-core/src/main/java/org/pkl/core/ast/type/TypeNode.java
pkl-core/src/main/java/org/pkl/core/ast/type/UnresolvedTypeNode.java
pkl-core/src/main/java/org/pkl/core/runtime/BaseModule.java
pkl-core/src/main/java/org/pkl/core/runtime/VmClass.java
pkl-core/src/main/java/org/pkl/core/runtime/VmPklBinaryEncoder.java
pkl-core/src/main/java/org/pkl/core/runtime/VmReference.java
pkl-core/src/main/java/org/pkl/core/runtime/VmTypeAlias.java
pkl-core/src/main/java/org/pkl/core/runtime/VmTypes.java
pkl-core/src/main/java/org/pkl/core/runtime/VmValueConverter.java
pkl-core/src/main/java/org/pkl/core/runtime/VmValueRenderer.java
pkl-core/src/main/java/org/pkl/core/runtime/VmValueVisitor.java
pkl-core/src/main/java/org/pkl/core/stdlib/AbstractRenderer.java
pkl-core/src/main/java/org/pkl/core/stdlib/PklConverter.java
pkl-core/src/main/java/org/pkl/core/stdlib/base/BaseNodes.java
...and 7 more files
This is still pretty early and needs a good deal of iteration and testing.
Resolves #912
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.
No dependencies set.
The note is not visible to the blocked user.
📋 Pull Request Information
Original PR: https://github.com/apple/pkl/pull/1354
Author: @HT154
Created: 12/6/2025
Status: 🔄 Open
Base:
main← Head:reference-t📝 Commits (6)
81638a0ImplementReference<T>6db6ffcsingle access class03cd347typecheck4f71c0cde-Stream19661d3ouch14a7c24yer📊 Changes
27 files changed (+1049 additions, -46 deletions)
View changed files
📝
docs/modules/ROOT/partials/component-attributes.adoc(+2 -0)📝
docs/modules/bindings-specification/pages/binary-encoding.adoc(+18 -0)📝
pkl-core/src/main/java/org/pkl/core/PClass.java(+14 -2)📝
pkl-core/src/main/java/org/pkl/core/TypeAlias.java(+8 -1)📝
pkl-core/src/main/java/org/pkl/core/ast/expression/binary/SubscriptNode.java(+12 -0)📝
pkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadPropertyNode.java(+14 -1)📝
pkl-core/src/main/java/org/pkl/core/ast/type/TypeNode.java(+75 -0)📝
pkl-core/src/main/java/org/pkl/core/ast/type/UnresolvedTypeNode.java(+4 -0)📝
pkl-core/src/main/java/org/pkl/core/runtime/BaseModule.java(+52 -0)📝
pkl-core/src/main/java/org/pkl/core/runtime/VmClass.java(+57 -39)📝
pkl-core/src/main/java/org/pkl/core/runtime/VmPklBinaryEncoder.java(+33 -0)➕
pkl-core/src/main/java/org/pkl/core/runtime/VmReference.java(+446 -0)📝
pkl-core/src/main/java/org/pkl/core/runtime/VmTypeAlias.java(+2 -1)📝
pkl-core/src/main/java/org/pkl/core/runtime/VmTypes.java(+4 -2)📝
pkl-core/src/main/java/org/pkl/core/runtime/VmValueConverter.java(+4 -0)📝
pkl-core/src/main/java/org/pkl/core/runtime/VmValueRenderer.java(+24 -0)📝
pkl-core/src/main/java/org/pkl/core/runtime/VmValueVisitor.java(+4 -0)📝
pkl-core/src/main/java/org/pkl/core/stdlib/AbstractRenderer.java(+11 -0)📝
pkl-core/src/main/java/org/pkl/core/stdlib/PklConverter.java(+14 -0)📝
pkl-core/src/main/java/org/pkl/core/stdlib/base/BaseNodes.java(+9 -0)...and 7 more files
📄 Description
This is still pretty early and needs a good deal of iteration and testing.
Resolves #912
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.