All haxe object types that have no C equivalent could be automatically wrapped with Retainer at the interface – what are the reasons not to do this?
Obscures useful hints, for example if the user uses a haxe callback or haxe Array, it'll just generate HaxeObject in C rather than hint about cpp.Callable and cpp.Pointer
Can still hint this case
Maybe we can convert Array to a C struct with length and array pointer
Perhaps unclear returned objects are retained until manual release
All haxe object types that have no C equivalent could be automatically wrapped with Retainer at the interface – what are the reasons not to do this?