[PR #789] [MERGED] Simplify lazy type checking of listings/mappings #733

Closed
opened 2025-12-30 01:26:26 +01:00 by adam · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/apple/pkl/pull/789
Author: @odenix
Created: 11/7/2024
Status: Merged
Merged: 12/6/2024
Merged by: @stackoverflow

Base: mainHead: lazy-check


📝 Commits (1)

  • a8957e1 Improve lazy type checking of listings and mappings

📊 Changes

34 files changed (+486 additions, -292 deletions)

View changed files

📝 pkl-core/src/main/java/org/pkl/core/ast/builder/AstBuilder.java (+4 -3)
📝 pkl-core/src/main/java/org/pkl/core/ast/expression/generator/GeneratorPredicateMemberNode.java (+1 -1)
📝 pkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadLocalPropertyNode.java (+1 -1)
📝 pkl-core/src/main/java/org/pkl/core/ast/expression/primary/ResolveVariableNode.java (+2 -2)
pkl-core/src/main/java/org/pkl/core/ast/member/ElementOrEntryNode.java (+73 -0)
📝 pkl-core/src/main/java/org/pkl/core/ast/member/ListingOrMappingTypeCastNode.java (+1 -1)
📝 pkl-core/src/main/java/org/pkl/core/ast/type/ResolveDeclaredTypeNode.java (+2 -2)
📝 pkl-core/src/main/java/org/pkl/core/ast/type/TypeNode.java (+71 -38)
📝 pkl-core/src/main/java/org/pkl/core/ast/type/UnresolvedTypeNode.java (+5 -1)
📝 pkl-core/src/main/java/org/pkl/core/runtime/VmFunction.java (+1 -1)
📝 pkl-core/src/main/java/org/pkl/core/runtime/VmListing.java (+20 -35)
📝 pkl-core/src/main/java/org/pkl/core/runtime/VmListingOrMapping.java (+84 -121)
📝 pkl-core/src/main/java/org/pkl/core/runtime/VmMapping.java (+31 -42)
📝 pkl-core/src/main/java/org/pkl/core/runtime/VmObject.java (+2 -2)
📝 pkl-core/src/main/java/org/pkl/core/runtime/VmObjectLike.java (+1 -1)
📝 pkl-core/src/main/java/org/pkl/core/runtime/VmUtils.java (+40 -39)
📝 pkl-core/src/main/java/org/pkl/core/stdlib/protobuf/RendererNodes.java (+6 -2)
📝 pkl-core/src/main/java/org/pkl/core/util/EconomicMaps.java (+4 -0)
pkl-core/src/test/files/LanguageSnippetTests/input-helper/listings/cacheStealingTypeCheck.pkl (+3 -0)
pkl-core/src/test/files/LanguageSnippetTests/input/errors/listingTypeCheckError8.pkl (+6 -0)

...and 14 more files

📄 Description

I marked this PR as a draft because my initial goal is to start a conversation. For details see commit messages.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/apple/pkl/pull/789 **Author:** [@odenix](https://github.com/odenix) **Created:** 11/7/2024 **Status:** ✅ Merged **Merged:** 12/6/2024 **Merged by:** [@stackoverflow](https://github.com/stackoverflow) **Base:** `main` ← **Head:** `lazy-check` --- ### 📝 Commits (1) - [`a8957e1`](https://github.com/apple/pkl/commit/a8957e1caba5d16bf6d60e2c4712796ec0755add) Improve lazy type checking of listings and mappings ### 📊 Changes **34 files changed** (+486 additions, -292 deletions) <details> <summary>View changed files</summary> 📝 `pkl-core/src/main/java/org/pkl/core/ast/builder/AstBuilder.java` (+4 -3) 📝 `pkl-core/src/main/java/org/pkl/core/ast/expression/generator/GeneratorPredicateMemberNode.java` (+1 -1) 📝 `pkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadLocalPropertyNode.java` (+1 -1) 📝 `pkl-core/src/main/java/org/pkl/core/ast/expression/primary/ResolveVariableNode.java` (+2 -2) ➕ `pkl-core/src/main/java/org/pkl/core/ast/member/ElementOrEntryNode.java` (+73 -0) 📝 `pkl-core/src/main/java/org/pkl/core/ast/member/ListingOrMappingTypeCastNode.java` (+1 -1) 📝 `pkl-core/src/main/java/org/pkl/core/ast/type/ResolveDeclaredTypeNode.java` (+2 -2) 📝 `pkl-core/src/main/java/org/pkl/core/ast/type/TypeNode.java` (+71 -38) 📝 `pkl-core/src/main/java/org/pkl/core/ast/type/UnresolvedTypeNode.java` (+5 -1) 📝 `pkl-core/src/main/java/org/pkl/core/runtime/VmFunction.java` (+1 -1) 📝 `pkl-core/src/main/java/org/pkl/core/runtime/VmListing.java` (+20 -35) 📝 `pkl-core/src/main/java/org/pkl/core/runtime/VmListingOrMapping.java` (+84 -121) 📝 `pkl-core/src/main/java/org/pkl/core/runtime/VmMapping.java` (+31 -42) 📝 `pkl-core/src/main/java/org/pkl/core/runtime/VmObject.java` (+2 -2) 📝 `pkl-core/src/main/java/org/pkl/core/runtime/VmObjectLike.java` (+1 -1) 📝 `pkl-core/src/main/java/org/pkl/core/runtime/VmUtils.java` (+40 -39) 📝 `pkl-core/src/main/java/org/pkl/core/stdlib/protobuf/RendererNodes.java` (+6 -2) 📝 `pkl-core/src/main/java/org/pkl/core/util/EconomicMaps.java` (+4 -0) ➕ `pkl-core/src/test/files/LanguageSnippetTests/input-helper/listings/cacheStealingTypeCheck.pkl` (+3 -0) ➕ `pkl-core/src/test/files/LanguageSnippetTests/input/errors/listingTypeCheckError8.pkl` (+6 -0) _...and 14 more files_ </details> ### 📄 Description I marked this PR as a draft because my initial goal is to start a conversation. For details see commit messages. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
adam added the pull-request label 2025-12-30 01:26:26 +01:00
adam closed this issue 2025-12-30 01:26:26 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/pkl#733