コード例 #1
0
 internal override Delegate CreateDelegate(DynamicMethod dm)
 {
     if (HasNestedCodeblocks)
     {
         var eval_dlg = dm.CreateDelegate(typeof(NestedWrapper.EvalDelegate)) as NestedWrapper.EvalDelegate;
         return(Delegate.CreateDelegate(typeof(R), new NestedWrapper(NestedCodeblocks.ToArray(), eval_dlg), "Eval", false));
     }
     else
     {
         return(dm.CreateDelegate(typeof(R)));
     }
 }
コード例 #2
0
ファイル: Binder.cs プロジェクト: tnsr1/XSharpPublic
 internal override Delegate CreateDelegate(DynamicMethod dm)
 {
     if (HasNestedCodeblocks)
     {
         var eval_dlg = dm.CreateDelegate(typeof(NestedWrapper.EvalDelegate)) as NestedWrapper.EvalDelegate;
         RuntimeCodeblockDelegate dlg = new NestedWrapper(NestedCodeblocks.ToArray(), eval_dlg).Eval;
         return(dlg);
     }
     else
     {
         return(dm.CreateDelegate(typeof(R)));
     }
 }