Skip to content

fix(codegen): route map parameter methods by type#73

Merged
luisleo526 merged 1 commit into
mainfrom
fix/ki48f-map-param-methods
Jul 17, 2026
Merged

fix(codegen): route map parameter methods by type#73
luisleo526 merged 1 commit into
mainfrom
fix/ki48f-map-param-methods

Conversation

@luisleo526

Copy link
Copy Markdown
Contributor

Summary

  • route typed-map UDF parameter methods through the existing map lowering by lexical TypeSpec
  • merge positional/keyword arguments into signature order for this new lane
  • bind key/value expressions once with deterministic key-before-value order
  • preserve reference aliasing and existing global/local/namespace positional output byte-for-byte

Regression coverage

  • put/get/remove/contains/size/clear/keys/values/copy/put_all
  • float/int/bool/string value types and missing-key compatibility behavior
  • caller-visible put/remove/clear/put_all mutation
  • global array/map/matrix name shadowing
  • helper-token collisions, nested calls, and the public UDT-map rejection boundary

Verification

  • focused: 4/4
  • full pinned-engine pytest: 1,708 passed / 2 skipped
  • native/Pyodide differential: 277/277
  • exact frozen 666-source manifest: byte-identical to base at 26ff05c3...a7e
  • independent adversarial review: approved; no scoped blocker
  • git diff --check: clean

Explicitly separate residuals

This PR fixes dispatch, not all map semantics. It does not change ordinary map keyword failures, terminal UDF collection/void return inference, or the shared map put/get/remove/put_all/insertion-order behavior. Those remain separate follow-up factors against the TradingView v6 map contract.

@luisleo526
luisleo526 marked this pull request as ready for review July 17, 2026 21:50
@luisleo526
luisleo526 merged commit d5be9e6 into main Jul 17, 2026
9 checks passed
@luisleo526
luisleo526 deleted the fix/ki48f-map-param-methods branch July 17, 2026 21:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant