public override string ToString(ExpressionFormatStyle style) { var result = string.Join(" , ", _groupChildrenNodes.Select(s => s.ToString(style))); if (Parent != null) { if (style == ExpressionFormatStyle.Canonical) { result = $"(){{{result}}}"; } else if (style == ExpressionFormatStyle.Arithmetic) { if (!string.IsNullOrEmpty(result)) { result = $"( {result} )"; } else { result = "( )"; } } else if (style == ExpressionFormatStyle.Polish) { result = $"({result})"; } } return(result); }
public override string ToString(ExpressionFormatStyle style) { var childAsString = RightNode != null?RightNode.ToString(style) : "??"; var result = style == ExpressionFormatStyle.Canonical ? $"{Operator}{{{childAsString}}}" : $"{Operator}{childAsString}"; Debug.Assert(result != null, "resulting string cannot be null."); return(result); }
public override string ToString(ExpressionFormatStyle style) { var arguments = Arguments != null ? Arguments.ToString(style) : string.Empty; if (Object != null) { return $"{Object.ToString(style)}.{Identifier}{arguments}"; } return $"@{Identifier}{arguments}"; }
public override string ToString(ExpressionFormatStyle style) { var leftAsString = LeftNode != null?LeftNode.ToString(style) : "??"; var rightAsString = RightNode != null?RightNode.ToString(style) : "??"; string result = null; if (style == ExpressionFormatStyle.Arithmetic) { result = $"{leftAsString} {Operator} {rightAsString}"; } else if (style == ExpressionFormatStyle.Polish) { result = $"{Operator} {leftAsString} {rightAsString}"; } else if (style == ExpressionFormatStyle.Canonical) { result = $"{Operator}{{{leftAsString},{rightAsString}}}"; } Debug.Assert(result != null, "resulting string cannot be null."); return(result); }
public override string ToString(ExpressionFormatStyle style) { if (Literal is string) { var stringLiteral = (string)Literal; var result = new StringBuilder(stringLiteral.Length * 2); result.Append('\"'); var enumerator = StringInfo.GetTextElementEnumerator(stringLiteral); while (enumerator.MoveNext()) { var segment = (string)enumerator.Current; if (segment.Length == 1) { var c = segment[0]; switch (c) { case '\'': result.Append("\\'"); break; case '"': result.Append("\\\""); break; case '\\': result.Append("\\\\"); break; case '\0': result.Append("\\0"); break; case '\a': result.Append("\\a"); break; case '\b': result.Append("\\b"); break; case '\f': result.Append("\\f"); break; case '\n': result.Append("\\n"); break; case '\r': result.Append("\\r"); break; case '\t': result.Append("\\t"); break; case '\v': result.Append("\\v"); break; default: if (char.IsControl(c)) { result.Append($"\\u{(int)segment[0]:x4}"); } else { result.Append(c); } break; } } else { result.Append(segment); } } result.Append('\"'); return result.ToString(); } return Literal.ToString(); }
/// <summary> /// Returns a human-readable representation this expression instance using the specified formatting. /// </summary> /// <param name="style">The formatting style to use.</param> /// <returns> /// A <see cref="string" /> that represents this instance. /// </returns> public string ToString(ExpressionFormatStyle style) { return(_currentGroupRootNode == null ? "??" : _currentGroupRootNode.ToString(style)); }
public abstract string ToString(ExpressionFormatStyle style);