ローカル変数を含むスタックフレームを提供します。
コード例 #1
0
        /// <summary>
        /// 指定されたILを式として実行し、結果を返します。
        /// </summary>
        /// <param name="il">実行する<see cref="KecaknoahIL"/></param>
        /// <returns>結果</returns>
        public KecaknoahObject ExecuteExpressionIL(KecaknoahIL il)
        {
            var s = new KecaknoahStackFrame(this, il);

            s.Execute();
            return(s.ReturningObject);
        }
コード例 #2
0
        /// <summary>
        /// 指定した<see cref="KecaknoahIL"/>を式として実行し、<see cref="KecaknoahStackFrame"/>を返します。
        /// </summary>
        /// <param name="il"></param>
        /// <returns>結果</returns>
        public KecaknoahStackFrame ExecuteWithStackFrame(KecaknoahIL il)
        {
            var sf = new KecaknoahStackFrame(this, il);

            sf.Execute();
            return(sf);
        }
コード例 #3
0
        /// <summary>
        /// 指定した<see cref="KecaknoahIL"/>を式として実行します。
        /// </summary>
        /// <param name="il"></param>
        /// <returns>結果</returns>
        public KecaknoahObject Execute(KecaknoahIL il)
        {
            var sf = new KecaknoahStackFrame(this, il);

            sf.Execute();
            return(sf.ReturningObject);
        }
コード例 #4
0
 public KecaknoahScriptCoroutineFrame(KecaknoahContext ctx, KecaknoahScriptFunction func, KecaknoahObject[] args)
 {
     StackFrame           = new KecaknoahStackFrame(ctx, func.BaseMethod.Codes);
     Args                 = args;
     StackFrame.Arguments = Args;
 }
コード例 #5
0
 public KecaknoahScriptCoroutineFrame(KecaknoahContext ctx, KecaknoahScriptFunction func, KecaknoahObject[] args)
 {
     StackFrame = new KecaknoahStackFrame(ctx, func.BaseMethod.Codes);
     Args = args;
     StackFrame.Arguments = Args;
 }
コード例 #6
0
ファイル: KecaknoahContext.cs プロジェクト: utgwkk/Kecaknoah
 /// <summary>
 /// 指定した<see cref="KecaknoahIL"/>を式として実行し、<see cref="KecaknoahStackFrame"/>を返します。
 /// </summary>
 /// <param name="il"></param>
 /// <returns>結果</returns>
 public KecaknoahStackFrame ExecuteWithStackFrame(KecaknoahIL il)
 {
     var sf = new KecaknoahStackFrame(this, il);
     sf.Execute();
     return sf;
 }
コード例 #7
0
ファイル: KecaknoahContext.cs プロジェクト: utgwkk/Kecaknoah
 /// <summary>
 /// 指定した<see cref="KecaknoahIL"/>を式として実行します。
 /// </summary>
 /// <param name="il"></param>
 /// <returns>結果</returns>
 public KecaknoahObject Execute(KecaknoahIL il)
 {
     var sf = new KecaknoahStackFrame(this, il);
     sf.Execute();
     return sf.ReturningObject;
 }