public void Serialize(ref JsonWriter writer, SimplePerson value, IJsonFormatterResolver formatterResolver) { if (value == null) { writer.WriteNull(); return; } UnsafeMemory64.WriteRaw7(ref writer, nameCaches[0]); // optimize byte->byte copy we know src size. writer.WriteInt32(value.Age); UnsafeMemory64.WriteRaw13(ref writer, nameCaches[1]); writer.WriteString(value.FirstName); UnsafeMemory64.WriteRaw12(ref writer, nameCaches[2]); writer.WriteString(value.LastName); writer.WriteEndObject(); }
public void _SerializePattern2Test(ref JsonWriter writer, SimplePerson value, IJsonFormatterResolver formatterResolver) { if (value == null) { writer.WriteNull(); return; } bool wrote = false; writer.WriteBeginObject(); // if(value.Age != nul) { if (wrote == false) { wrote = true; writer.WriteValueSeparator(); } UnsafeMemory64.WriteRaw7(ref writer, nameCaches2[0]); writer.WriteInt32(value.Age); } if (value.FirstName != null) { if (wrote == false) { wrote = true; writer.WriteValueSeparator(); } UnsafeMemory64.WriteRaw13(ref writer, nameCaches2[1]); writer.WriteString(value.FirstName); } if (value.LastName != null) { if (wrote == false) { wrote = true; writer.WriteValueSeparator(); } UnsafeMemory64.WriteRaw12(ref writer, nameCaches2[2]); writer.WriteString(value.LastName); } writer.WriteEndObject(); }