示例#1
0
        internal override void ToString(FormatContext format, StringBuilder builder)
        {
            builder.Append("[");
            FormatContext indented = format.Indented();

            if (elements.Length > 0)
            {
                indented.OptionalNewline(builder);
            }

            for (int i = 0; i < elements.Length; i++)
            {
                elements[i].ToString(indented, builder);
                if (i != elements.Length - 1)
                {
                    builder.Append(",");
                }
                if (i < elements.Length - 1)
                {
                    indented.OptionalNewline(builder);
                }
            }

            if (elements.Length > 0)
            {
                format.OptionalNewline(builder);
            }

            builder.Append("]");
        }
示例#2
0
        internal override void ToString(FormatContext format, StringBuilder builder)
        {
            builder.Append("{");
            var indented = format.Indented();

            foreach (KeyValuePair <string, JToken> entry in this.values)
            {
                indented.OptionalNewline(builder);
                builder.Append("\"");
                builder.Append(entry.Key);
                builder.Append("\"");
                indented.OptionalWhitespace(builder);
                builder.Append(":");
                indented.OptionalWhitespace(builder);
                entry.Value.ToString(indented, builder);
                builder.Append(",");
            }
            if (this.values.Count > 0)
            {
                // Remove the last comma
                builder.Remove(builder.Length - 1, 1);
            }
            format.OptionalNewline(builder);
            builder.Append("}");
        }
示例#3
0
        public virtual string ToString(Formatting formatting)
        {
            var builder = new StringBuilder();
            var format  = new FormatContext()
            {
                Formatting  = formatting,
                indentation = 0
            };

            this.ToString(format, builder);
            return(builder.ToString());
        }
示例#4
0
 internal override void ToString(FormatContext format, StringBuilder builder)
 {
     builder.Append('"');
     for (int i = 0; i < value.Length; i++)
     {
         char c = value[i];
         if (c == '"')
         {
             builder.Append("\\\"");
         }
         else
         {
             builder.Append(c);
         }
     }
     builder.Append('"');
 }
示例#5
0
        internal override void ToString(FormatContext format, StringBuilder builder)
        {
            if (float.IsInfinity(valueF) || float.IsNaN(valueF))
            {
                builder.Append("null");
                return;
            }

            if (this.type == Type.Float)
            {
                builder.Append(valueF.ToString("G9", CultureInfo.CreateSpecificCulture("en-US")));
            }
            else
            {
                builder.Append(valueI);
            }
        }
示例#6
0
 internal abstract void ToString(FormatContext format, StringBuilder builder);
示例#7
0
 internal override void ToString(FormatContext formatting, StringBuilder builder)
 {
     builder.Append(value ? "true" : "false");
 }
示例#8
0
文件: JNull.cs 项目: trifox/evolution
 internal override void ToString(FormatContext format, StringBuilder builder)
 {
     builder.Append("null");
 }