Writer.WriteAll supports any struct