haxetink / tink_macro

The macro toolkit
MIT License
57 stars 17 forks source link

Make this lib work in non-macro #13

Open kevinresol opened 7 years ago

kevinresol commented 7 years ago

First, I have to wrap using tink.MacroApi; within #if macro, if my module has mixed macro and non-macro code. Otherwise it will complain something like Class<Context> has no field makeExpr.

Second, I have written a few extern generators which use TypeDefinition, Expr, ComplexTypes in a non-macro context. It would be very helpful if tink_macro can be used in such case. For example 'some.path.Class'.asTypePath(). Also, seems that var e = macro someExpr; doesn't work in non-macro because it will say something like Class<Context> has no field makeExpr again. Maybe tink_macro can polyfill that, or it should be the compiler's responsibility to support that in non-macro.