internal override string ToString(string indent)
{
var sb = new StringBuilder();
sb.AppendFormat("{0}( CASE", indent);
var newIndent = indent + " ";
foreach (var t in WhenClauses)
{
sb.Append("\r\n");
sb.Append(t.ToString(newIndent));
}
if (ElseExpr != null)
{
sb.Append("\r\n");
sb.AppendFormat("{0}ELSE ", newIndent);
if (ElseExpr.OneLine())
{
sb.Append(ElseExpr.ToString(""));
}
else
{
sb.Append("\r\n");
sb.Append(ElseExpr.ToString(newIndent + " "));
}
}
sb.AppendFormat("\r\n{0}END )", indent);
return sb.ToString();
}