public bool Yield(object[] /*!*/ args, out object blockResult) { ContractUtils.RequiresNotNull(args, "args"); switch (args.Length) { case 0: blockResult = RubyOps.Yield0(Self, this); break; case 1: blockResult = RubyOps.Yield1(args[0], Self, this); break; case 2: blockResult = RubyOps.Yield2(args[0], args[1], Self, this); break; case 3: blockResult = RubyOps.Yield3(args[0], args[1], args[2], Self, this); break; case 4: blockResult = RubyOps.Yield4(args[0], args[1], args[2], args[3], Self, this); break; default: blockResult = RubyOps.YieldN(args, Self, this); break; } return(BlockJumped(blockResult)); }
public bool Yield(object arg1, object arg2, object arg3, out object blockResult) { return(BlockJumped(blockResult = RubyOps.Yield3(arg1, arg2, arg3, null, Self, this))); }