ISqlExpression ISqlExpressionWalkable.Walk(bool skipColumns, Func <ISqlExpression, ISqlExpression> func) { _expr1 = _expr1.Walk(skipColumns, func); _expr2 = _expr2.Walk(skipColumns, func); return(func(this)); }
ISqlExpression ISqlExpressionWalkable.Walk(bool skipColumns, Func <ISqlExpression, ISqlExpression> func) { for (var i = 0; i < Columns.Count; i++) { var col = Columns[i]; var expr = col.Walk(skipColumns, func); if (expr is SqlColumn column) { Columns[i] = column; } else { Columns[i] = new SqlColumn(col.Parent, expr, col.Alias); } } TakeValue = TakeValue?.Walk(skipColumns, func); SkipValue = SkipValue?.Walk(skipColumns, func); return(null); }