pub struct Request {
pub data: Option<Vec<BufferRegion>>,
pub defer_completion: Option<bool>,
pub information: Option<RequestInfo>,
pub short: Option<bool>,
/* private fields */
}Expand description
Requests passed over fuchsia.hardware.usb.endpoint.Endpoint. See fuchsia.hardware.usb.endpoint.Endpoint::QueueRequests for more details.
Fields§
§data: Option<Vec<BufferRegion>>Data. This array is consumed in-order, and allows for scatter/gather semantics across physically non-contiguous regions of a large buffer.
defer_completion: Option<bool>Indicates not to complete this Request when done unless it failed. All Requests up to the next defer_completion == false are responded to as one unit.
information: Option<RequestInfo>Extra information needed for Request.
short: Option<bool>True if this is a short transfer sending less than what the receiver is expecting. Controllers ensure this transfer is terminated by a short packet.
Interpreted as false if absent.
Trait Implementations§
Source§impl Decode<Request, DefaultFuchsiaResourceDialect> for Request
impl Decode<Request, DefaultFuchsiaResourceDialect> for Request
Source§impl ResourceTypeMarker for Request
impl ResourceTypeMarker for Request
Source§type Borrowed<'a> = &'a mut Request
type Borrowed<'a> = &'a mut Request
The Rust type to use for encoding. This is a particular
Encode<Self>
type cheaply obtainable from &mut Self::Owned. There are three cases: Read moreSource§fn take_or_borrow<'a>(
value: &'a mut <Self as TypeMarker>::Owned,
) -> Self::Borrowed<'a>
fn take_or_borrow<'a>( value: &'a mut <Self as TypeMarker>::Owned, ) -> Self::Borrowed<'a>
Cheaply converts from
&mut Self::Owned to Self::Borrowed. For
HandleBased types this is “take” (it returns an owned handle and
replaces value with Handle::invalid), and for all other types it is
“borrow” (just converts from one reference to another).impl Standalone<DefaultFuchsiaResourceDialect> for Request
impl StructuralPartialEq for Request
Source§impl TypeMarker for Request
impl TypeMarker for Request
Source§fn inline_align(_context: Context) -> usize
fn inline_align(_context: Context) -> usize
Returns the minimum required alignment of the inline portion of the
encoded object. It must be a (nonzero) power of two.
Source§fn inline_size(_context: Context) -> usize
fn inline_size(_context: Context) -> usize
Returns the size of the inline portion of the encoded object, including
padding for alignment. Must be a multiple of
inline_align.Source§fn encode_is_copy() -> bool
fn encode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned matches the FIDL wire
format and encoding requires no validation. When true, we can optimize
encoding arrays and vectors of Self::Owned to a single memcpy. Read moreSource§fn decode_is_copy() -> bool
fn decode_is_copy() -> bool
Returns true if the memory layout of
Self::Owned matches the FIDL wire
format and decoding requires no validation. When true, we can optimize
decoding arrays and vectors of Self::Owned to a single memcpy.Auto Trait Implementations§
impl Freeze for Request
impl RefUnwindSafe for Request
impl Send for Request
impl Sync for Request
impl Unpin for Request
impl UnsafeUnpin for Request
impl UnwindSafe for Request
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more