private void WriteListConstructor(DekiScriptListConstructor expr, char open, char close, bool spacer, StringBuilder state) { state.Append(open); bool first = true; foreach (DekiScriptExpression item in expr.Items) { if (!first) { state.Append(", "); } else if (spacer) { state.Append(" "); } first = false; item.VisitWith(this, state); } if (expr.Generator != null) { state.Append(" foreach "); state.Append(expr.Generator.ToString()); } if (spacer && !first) { state.Append(" "); } state.Append(close); }
public Empty Visit(DekiScriptListConstructor expr, StringBuilder state) { WriteListConstructor(expr, '[', ']', true, state); return(Empty.Value); }