|
@@ -37,7 +37,14 @@ class String {
|
|
|
static function __index(s:Dynamic, k:Dynamic) : Dynamic {
|
|
|
if (k == "length") return NativeStringTools.len(s);
|
|
|
else if (Reflect.hasField(untyped String.prototype, k)) return untyped String.prototype[k];
|
|
|
- else if (__oldindex != null) return __oldindex(s,k);
|
|
|
+ else if (__oldindex != null) {
|
|
|
+ if (Lua.type(__oldindex) == "function"){
|
|
|
+ return __oldindex(s,k);
|
|
|
+ } else if (Lua.type(__oldindex) == "table"){
|
|
|
+ return untyped __oldindex[k];
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
else return null;
|
|
|
}
|
|
|
|