/// <summary>
        ///    将函数参数压栈,准备调用函数
        /// </summary>
        /// <param name="parameter"></param>
        internal void PushFuncParameter(ScriptObject parameter)
        {
            Contract.Assert(parameter != null);

            int funcIndex = _funcPushStack.Peek();

            FuncPart func = stack[funcIndex].Value.RefPartHandle.ConverToFuncPart();

            //当前栈中的函数参数小于函数参数大小
            if (Top - (funcIndex + 1) < func.ArgsCount)
            {
                Push(parameter);
            }
            else if (func.IsUncertainParameters == true)   //是不定参数
            {
                if (Top - (funcIndex + 1) == func.ArgsCount)
                {
                    ScriptObject s = ScriptObject.CreateTable();

                    stack.Add(s);
                }
                ScriptObject args = stack[Top - 1];
                args.AddInArray(parameter);
            }
            //否则,则省略掉传入参数
        }
 public static ScriptObject CreateTable()
 {
     return(ScriptObject.CreateTable());
 }