/// <inheritdoc/> public override void Write(Utf8JsonWriter writer, List <ProcessingBlock> blocks, JsonSerializerOptions options) { var pbConverter = new ProcessingBlockConverter(); writer.WriteStartArray(); for (var i = 0; i < blocks.Count; ++i) { pbConverter.Write(writer, blocks[i], options); } writer.WriteEndArray(); }
/// <inheritdoc/> public override List <ProcessingBlock> Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { //Note: Maybe we should add checks for each read. var pbConverter = new ProcessingBlockConverter(); var res = new List <ProcessingBlock>(); _ = reader.Read(); // Read start array while (reader.TokenType != JsonTokenType.EndArray) { res.Add(pbConverter.Read(ref reader, typeof(ProcessingBlock), options)); _ = reader.Read(); // Read the ',' and at last read the end array } return(res); }