/// <summary> /// Visits the specified yield return statement. /// </summary> /// <param name="yieldReturnStatement">The yield return statement.</param> public override void Visit(IYieldReturnStatement yieldReturnStatement) { YieldReturnStatement mutableYieldReturnStatement = new YieldReturnStatement(yieldReturnStatement); this.resultStatement = this.myCodeCopier.DeepCopy(mutableYieldReturnStatement); }
/// <summary> /// Visits the specified yield return statement. /// </summary> /// <param name="yieldReturnStatement">The yield return statement.</param> /// <returns></returns> protected virtual IStatement DeepCopy(YieldReturnStatement yieldReturnStatement) { yieldReturnStatement.Expression = Substitute(yieldReturnStatement.Expression); return yieldReturnStatement; }
/// <summary> /// Visits the specified yield return statement. /// </summary> /// <param name="yieldReturnStatement">The yield return statement.</param> public override void Visit(IYieldReturnStatement yieldReturnStatement) { YieldReturnStatement mutableYieldReturnStatement = yieldReturnStatement as YieldReturnStatement; if (alwaysMakeACopy || mutableYieldReturnStatement == null) mutableYieldReturnStatement = new YieldReturnStatement(yieldReturnStatement); this.resultStatement = this.myCodeMutator.Visit(mutableYieldReturnStatement); }
/// <summary> /// Rewrites the children of the given yield return statement. /// </summary> public virtual void RewriteChildren(YieldReturnStatement yieldReturnStatement) { this.RewriteChildren((Statement)yieldReturnStatement); yieldReturnStatement.Expression = this.Rewrite(yieldReturnStatement.Expression); }
/// <summary> /// Visits the specified yield return statement. /// </summary> /// <param name="yieldReturnStatement">The yield return statement.</param> /// <returns></returns> public virtual IStatement Visit(YieldReturnStatement yieldReturnStatement) { yieldReturnStatement.Expression = Visit(yieldReturnStatement.Expression); return yieldReturnStatement; }