pkl / PR 1849

Add user generic methods

apple/pkl#1849 openmixed

+1868/−790lines
155files
2comments
2026-09-04opened
-merged

What it touches

main: 82 test: 71 docs: 1 other: 1

Modules: pkl-core (144), pkl-parser (6), pkl-formatter (3), docs (1), stdlib (1)

Architectural impact (arcade-agent diff_impact)

77files mapped to the graph
1096entities in those files
Core, Formatter, Parsercomponents
2316entities within 3 hops downstream

Most depended-upon changed entities

EntityDependents
org.pkl.core.ast.expression.literal.AmendFunctionNode22
org.pkl.core.ast.expression.member.InferParentWithinMethodNode17
org.pkl.core.ast.expression.member.InferParentWithinObjectMethodNode17
org.pkl.core.ast.expression.member.InferParentWithinPropertyNode17
org.pkl.core.ast.expression.member.InvokeMethodDirectNode17
org.pkl.core.ast.PklRootNode12
org.pkl.core.ast.builder.AstBuilder7
org.pkl.core.ast.expression.member.AbstractInferParentNode6

Computed against the current default branch, not the PR base commit; files renamed or deleted since then are unmatched. Downstream counts are a reverse-dependency closure to depth 3 and over-approximate real blast radius.

Files

docsdocs/modules/language-reference/pages/index.adoc
mainpkl-core/src/main/java/org/pkl/core/ast/PklRootNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/SimpleRootNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/builder/AstBuilder.java
mainpkl-core/src/main/java/org/pkl/core/ast/builder/SymbolTable.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/binary/SubscriptNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/generator/GeneratorPredicateMemberNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/literal/AmendFunctionNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/AbstractInferParentFromMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/AbstractInferParentNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/AbstractInvokeLexicalMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/AbstractInvokeLexicalOrQualifiedMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/AbstractInvokeMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/AbstractInvokeQualifiedMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InferParentWithinMethodArgumentNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InferParentWithinMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InferParentWithinObjectMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InferParentWithinPropertyNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InvokeLexicalClassMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InvokeLexicalObjectMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InvokeMethodDirectNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InvokeMethodVirtualNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InvokeQualifiedClassMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InvokeQualifiedObjectMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/InvokeSuperMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadLexicalLocalPropertyNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadPropertyNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadQualifiedLocalPropertyNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadSuperEntryNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/member/ReadSuperPropertyNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/primary/ExecuteCustomThisWithRootNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/primary/ExecuteTypeArgumentCheckNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/primary/GetModuleNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/expression/primary/WithCustomThisExpression.java
mainpkl-core/src/main/java/org/pkl/core/ast/internal/ToStringNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/lambda/ApplyVmFunction0Node.java
mainpkl-core/src/main/java/org/pkl/core/ast/lambda/ApplyVmFunction1Node.java
mainpkl-core/src/main/java/org/pkl/core/ast/lambda/ApplyVmFunction2Node.java
mainpkl-core/src/main/java/org/pkl/core/ast/lambda/ApplyVmFunction3Node.java
mainpkl-core/src/main/java/org/pkl/core/ast/lambda/ApplyVmFunction4Node.java
mainpkl-core/src/main/java/org/pkl/core/ast/lambda/ApplyVmFunction5Node.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/ClassMethod.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/ClassNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/DelegateToExtraStorageMapOrParentNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/DelegateToExtraStorageObjNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/DelegateToExtraStorageObjOrParentNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/FunctionNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/ListingOrMappingTypeCastNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/Method.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/ObjectMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/PropertyTypeNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/TypeAliasNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/TypeCheckedPropertyNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/TypedPropertyNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/UnresolvedFunctionNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/member/UnresolvedMethodNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/type/EvalTypeArgumentNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/type/IdentityMixinNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/type/ResolveDeclaredTypeNode.java
mainpkl-core/src/main/java/org/pkl/core/ast/type/TypeNode.java

… and 95 more files.