Ejemplo n.º 1
0
        public static void WriteArray(IEnumerable input, StringBuilder sb, IndentWriter indentWriter)
        {
            sb.Append("[");
            var childIndentWriter = indentWriter + 1;

            bool firstElement = true;

            foreach (var child in input)
            {
                if (!firstElement)
                {
                    sb.Append(",");
                }
                indentWriter.WriteLineBreak(sb);

                childIndentWriter.Write(sb);
                WriteElement(child, sb, childIndentWriter);

                firstElement = false;
            }

            indentWriter.WriteLineBreak(sb);
            indentWriter.Write(sb);
            sb.Append("]");
        }
Ejemplo n.º 2
0
        public static void WriteObject(IDictionary <string, object> input, StringBuilder sb, IndentWriter indentWriter)
        {
            sb.Append("{");
            var childIndentWriter = indentWriter + 1;

            bool firstElement = true;

            foreach (var child in input)
            {
                if (!firstElement)
                {
                    sb.Append(",");
                }
                indentWriter.WriteLineBreak(sb);

                childIndentWriter.Write(sb);
                WriteString(child.Key, sb);

                sb.Append(":");
                if (IsObject(child.Value) || IsArray(child.Value))
                {
                    childIndentWriter.WriteLineBreak(sb);
                    childIndentWriter.Write(sb);
                }
                else
                {
                    childIndentWriter.WriteSeparator(sb);
                }

                WriteElement(child.Value, sb, childIndentWriter);

                firstElement = false;
            }

            indentWriter.WriteLineBreak(sb);
            indentWriter.Write(sb);
            sb.Append("}");
        }