public bool TryCallMemberFunction(out object result, object key, params object[] parameters) { var function = GetPropertyValue(key); if ((function is FunctionInstance) == false) { result = null; return false; } result = ((FunctionInstance)function).CallLateBound(this, parameters); return true; }
public static string ToString(ObjectInstance thisObj) { // Try calling thisObj.join(). object result; if (thisObj.TryCallMemberFunction(out result, "join") == true) return TypeConverter.ToString(result); // Otherwise, use the default Object.prototype.toString() method. return ObjectInstance.ToStringJS(thisObj.Engine, thisObj); }