pub struct Field<S: Stream> {
pub headers: Rc<FieldHeaders>,
pub data: FieldData<S>,
/* private fields */
}
Expand description
A single field in a multipart stream.
The data of the field is provided as a Stream
impl in the data
field.
To avoid the next field being initialized before this one is done being read
(in a linear stream), only one instance per Multipart
instance is allowed at a time.
A Drop
implementation on FieldData
is used to notify Multipart
that this field is done
being read, thus:
§Warning About Leaks
If this value or the contained FieldData
is leaked (via mem::forget()
or some
other mechanism), then the parent Multipart
will never be able to yield the next field in the
stream. The task waiting on the Multipart
will also never be notified, which, depending on the
event loop/reactor/executor implementation, may cause a deadlock.
Fields§
§headers: Rc<FieldHeaders>
The headers of this field, including the name, filename, and Content-Type
, if provided.
data: FieldData<S>
The data of this field in the request, represented as a stream of chunks.