HaxeFoundation / HaxeFoundation/haxe
[macro] [Haxe 5] Make it possible to get the untyped version (haxe.macro.Field) of super classes and for Context.getType
- Dominant language
- Haxe
- Stars
- 6.9k
- Forks
- 715
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 11
Description
Currently you can only get the typed version (haxe.macro.ClassField) which has some context info missing, especially around
?arg = val
arg = val
?arg:Null
?arg:Type
?arg:Null = val
arg:Null = val
arg:Type = val
especially when making a wrapper around a class that keeps the args the same.
And theres also a possibility of halting compilation due to the macro trying to type stuff in a incorrect order.
Contributor guide
Research direction
Start by examining the macro APIs for haxe.macro.Field, haxe.macro.ClassField, and Context.getType, focusing on how superclass fields and type information are exposed. Define how the untyped representation should preserve argument annotations and defaults, then verify that wrappers can retain those details without causing incorrect typing order.
Written by the indexing model from the issue text.
Assessment
- Domain
- compilers
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100