code: func (enc *Encoder) encodeArray(v reflect.Value, ignoreOpaque bool) (err error) {
  	numItems := uint32(v.Len())
  	err = enc.encode(reflect.ValueOf(numItems))
  	if err != nil {
  		return err
  	}
  	err = enc.encodeFixedArray(v, ignoreOpaque)
  	return
  }
docs: // encodeArray appends an XDR encoded integer representing the number of
  // elements in the passed slice represented by the reflection value followed by
  // the XDR encoded representation of each element in slice to the Encoder's
  // data.  The ignoreOpaque flag controls whether or not uint8 (byte) elements
  // should be encoded individually or as a variable sequence of opaque data.
  //
  // A MarshalError is returned if any issues are encountered while encoding
  // the array elements.
  //
  // Reference:
  // 	RFC Section 4.13 - Variable-Length Array
  // 	Unsigned integer length followed by individually XDR encoded array elements