123456789101112131415161718192021222324252627282930313233343536373839 |
- package h3d.impl;
- import haxe.macro.Context;
- import haxe.macro.Expr;
- class MacroHelper {
- #if macro
- static function replaceGLLoop( e : Expr ) {
- switch( e.expr ) {
- case EConst(CIdent("gl")):
- e.expr = EConst(CIdent("GL"));
- default:
- haxe.macro.ExprTools.iter(e, replaceGLLoop);
- }
- }
- public static function replaceGL() {
- var fields = Context.getBuildFields();
- for( f in fields )
- switch( f.kind ) {
- case FFun(f):
- if( f.expr != null ) replaceGLLoop(f.expr);
- case FVar(_,e):
- if( e != null ) replaceGLLoop(e);
- default:
- }
- return fields;
- }
- #end
- public static macro function getResourcesPath() {
- var dir = haxe.macro.Context.definedValue("resourcesPath");
- if( dir == null ) dir = "res";
- return macro $v{try Context.resolvePath(dir) catch( e : Dynamic ) null};
- }
- }
|