private static LooseArray DeserializeArray(TextReader reader) { if (reader.Read() != '[') { throw new ArgumentException("reader: Does not contain a serialized array."); } LooseArray array = new LooseArray(); bool first = true; for (;;) { EatWhitespace(reader); if (reader.Peek() == ']') { break; } if (!first) { if (reader.Read() != ',') { throw new ArgumentException("reader: Malformed array."); } first = false; } array.Add(DeserializeObject(reader)); } reader.Read(); return(array); }
private static void SerializeArray(StringBuilder str, LooseArray array) { str.Append('['); bool comma = false; foreach (LooseObject obj in array) { if (comma) str.Append(','); comma = true; SerializeObject(str, obj); } str.Append(']'); }
private static LooseArray DeserializeArray(TextReader reader) { if (reader.Read() != '[') throw new ArgumentException("reader: Does not contain a serialized array."); LooseArray array = new LooseArray(); bool first = true; for (;;) { EatWhitespace(reader); if (reader.Peek() == ']') break; if (!first) { if (reader.Read() != ',') throw new ArgumentException("reader: Malformed array."); first = false; } array.Add(DeserializeObject(reader)); } reader.Read(); return array; }