hxasync
hxasync copied to clipboard
Type safety / static async check
trafficstars
Would it possible to do so that when @async is used with a function, its type is change, so if @await is not used when calling the function type checking would fail?
Example
@async function returnZero(): Int {
return 0;
}
var i: Int = @await returnZero(); // compilation succeeds
var p: Promise<Int> = returnZero(); // compilation succeeds
var i2: Int = returnZero(); // compilation fails
I've tried to implement type checking, but did not manage to do that, unfortunately.
I guess that I am not good enough with Haxe macro system.