Scorpio.Runtime.ScriptContext.ParseCall C# (CSharp) Method

ParseCall() private method

private ParseCall ( CodeCallFunction scriptFunction, bool needRet ) : ScriptObject
scriptFunction Scorpio.CodeDom.CodeCallFunction
needRet bool
return Scorpio.ScriptObject
        ScriptObject ParseCall(CodeCallFunction scriptFunction, bool needRet)
        {
            ScriptObject obj = ResolveOperand(scriptFunction.Member);
            int num = scriptFunction.ParametersCount;
            ScriptObject[] parameters = new ScriptObject[num];
            for (int i = 0; i < num; ++i) {
                //此处要调用Assign 如果传入number string等基础类型  在函数内自运算的话 会影响 传入的值
                parameters[i] = ResolveOperand(scriptFunction.Parameters[i]).Assign();
            }
            m_script.PushStackInfo();
            object ret = obj.Call(parameters);
            m_script.PopStackInfo();
            return needRet ? m_script.CreateObject(ret) : null;
        }
        ScriptArray ParseArray(CodeArray array)