protected internal override CatchBlockSlim VisitCatchBlock(CatchBlockSlim node) { Append("CatchBlock("); Append(node.Test); VisitNonNull(", ", node.Variable); VisitNonNull(", ", node.Filter); VisitNonNull(", ", node.Body); Append(')'); return(node); }
/// <summary> /// Visits a catch block slim tree node, produces a catch block. /// </summary> /// <param name="node">Node to visit.</param> /// <param name="variable">Variable expressions.</param> /// <param name="body">Body expression.</param> /// <param name="filter">Filter expressions.</param> /// <returns>The catch block represented by the catch block slim node.</returns> protected override CatchBlock MakeCatchBlock(CatchBlockSlim node, ParameterExpression variable, Expression body, Expression filter) { return(_factory.MakeCatchBlock(VisitIfNotNull(node.Test, MakeTypeCachedDelegate), variable, body, filter)); }
/// <summary> /// Visits a block expression tree node. /// </summary> /// <param name="node">Node to visit.</param> /// <returns>Result of visiting the node.</returns> protected internal virtual CatchBlockSlim VisitCatchBlock(CatchBlockSlim node) { return(node.Update(VisitAndConvert(node.Variable), Visit(node.Filter), Visit(node.Body))); }