diff --git a/hscript/Interp.hx b/hscript/Interp.hx index 79c3019..d51497e 100644 --- a/hscript/Interp.hx +++ b/hscript/Interp.hx @@ -294,7 +294,7 @@ class Interp { case EField(e,f): var obj = expr(e); if( obj == null ) throw Error.EInvalidAccess(f); - return call(obj,Reflect.field(obj,f),args); + return fcall(obj,f,args); default: return call(null,expr(e),args); } @@ -438,6 +438,10 @@ class Interp { return v; } + function fcall( o : Dynamic, f : String, args : Array ) : Dynamic { + return call(o, Reflect.field(o, f), args); + } + function call( o : Dynamic, f : Dynamic, args : Array ) : Dynamic { return Reflect.callMethod(o,f,args); }