// Now we get to the serialization of compound types.
//
// The start of the sequence, each value, and the end are three separate
// method calls. This one is responsible only for serializing the start,
// which in JSON is `[`.
//
// The length of the sequence may or may not be known ahead of time. This
// doesn't make a difference in JSON because the length is not represented
// explicitly in the serialized form. Some serializers may only be able to
// support sequences for which the length is known up front.
Now we get to the serialization of compound types.
The start of the sequence, each value, and the end are three separate
method calls. This one is responsible only for serializing the start,
which in JSON is `[`.

The length of the sequence may or may not be known ahead of time. This
doesn't make a difference in JSON because the length is not represented
explicitly in the serialized form. Some serializers may only be able to
support sequences for which the length is known up front.
Now we get to the serialization of compound types . The start of the sequence each value and the end are three separate method calls . This one is responsible only for serializing the start which in JSON is ` [ ` . The length of the sequence may or may not be known ahead of time . This doesn ' t make a difference in JSON because the length is not represented explicitly in the serialized form . Some serializers may only be able to support sequences for which the length is known up front .
fn serialize_seq(self, _len: Option<usize>) -> Result<Self::SerializeSeq> {
        Ok(TlvSerializer {
            items: vec![],
            tag: self.tag,
            output: &mut self.output,
        })
    }
fn serialize_seq ( self , _len : Option < usize > ) -> Result < Self :: SerializeSeq > { Ok ( TlvSerializer { items : vec ! [ ] , tag : self . tag , output : & mut self . output , } ) }
Now we get to the serialization of compound types.
Now we get to the serialization of compound types .
self
_len
Option<usize>