Spaces:
Sleeping
Sleeping
/**@constructor*/ | |
function Reflection(obj) { | |
this.obj = obj; | |
} | |
Reflection.prototype.getConstructorName = function() { | |
if (this.obj.constructor.name) return this.obj.constructor.name; | |
var src = this.obj.constructor.toSource(); | |
var name = src.substring(name.indexOf("function")+8, src.indexOf('(')).replace(/ /g,''); | |
return name; | |
} | |
Reflection.prototype.getMethod = function(name) { | |
for (var p in this.obj) { | |
if (p == name && typeof(this.obj[p]) == "function") return this.obj[p]; | |
} | |
return null; | |
} | |
Reflection.prototype.getParameterNames = function() { | |
var src = this.obj.toSource(); | |
src = src.substring( | |
src.indexOf("(", 8)+1, src.indexOf(")") | |
); | |
return src.split(/, ?/); | |
} | |