private static void WritePropertyValueToStringRepresentation(StringBuilder sb, IPropertySymbol namedTypeSymbol) { var propertyVauleEnclosingDelimiter = ObjectSeparatorTokensExtensions.GetSeparatorFor(namedTypeSymbol.Type.SpecialType); sb.Append(propertyVauleEnclosingDelimiter.GetOpeningSeparatorFor()); var attributeFormatString = CompilationHelper.GetAttributesOfType <FormatToStringAttribute>(namedTypeSymbol).SingleOrDefault(); if (attributeFormatString != null) { var format = GetFirstConstructorArgumentValueOfAttribute(attributeFormatString); sb.Append($"{{{namedTypeSymbol.Name}:{format}}}"); } else { sb.Append($"{{{namedTypeSymbol.Name}}}"); } sb.Append(propertyVauleEnclosingDelimiter.GetClosingSeparatorFor()); }