code: func (p *PooledMarshaller) Encode(obj interface{}, w io.Writer) error {
  	m := p.pool.Get().(*Marshaller)
  	err := m.Encode(obj, w)
  	p.pool.Put(m)
  	return err
  }
docs: // Encode encodes the passed object to the given writer using the pool of
  // marshallers.