Skip to content

Conversation

@stakx
Copy link
Member

@stakx stakx commented Dec 16, 2025

This is a continuation of #708 and #709.

This PR reduces the set of Reference subclasses to only five. Four of them correspond to the principal types of "locations" (as per ECMA-335):

  • method parameters (ArgumentReference)
  • local variables (LocalReference)
  • static and instance fields (FieldReference)
  • array elements (ArrayElementReference)

A fifth one, IndirectReference (essentially this is the pointer indirection / dereference operator), is preserved because it is convenient for code generation involving by-refs.

@stakx stakx added this to the v6.0.0 milestone Dec 16, 2025
@stakx stakx self-assigned this Dec 16, 2025
@stakx stakx force-pushed the refactor/simple-ast-reference-subclasses branch from 18e89f6 to f2bc4a2 Compare December 17, 2025 00:01
@stakx stakx merged commit 47e9e69 into castleproject:master Dec 17, 2025
4 checks passed
@stakx stakx deleted the refactor/simple-ast-reference-subclasses branch December 17, 2025 00:21
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