pub trait Body: Decode<Self::MarkerAtTopLevel, DefaultFuchsiaResourceDialect> + Decode<Self::MarkerInResultUnion, DefaultFuchsiaResourceDialect> {
type MarkerAtTopLevel: ValueTypeMarker<Owned = Self> + ValueTypeMarker + for<'a> ValueTypeMarker
where <Self::MarkerAtTopLevel as TypeMarker>::Owned: Decode<Self::MarkerAtTopLevel, DefaultFuchsiaResourceDialect>,
<Self::MarkerAtTopLevel as ValueTypeMarker>::Borrowed<'a>: for<'a> Encode<Self::MarkerAtTopLevel, DefaultFuchsiaResourceDialect>;
type MarkerInResultUnion: ValueTypeMarker<Owned = Self> + ValueTypeMarker + for<'a> ValueTypeMarker
where <Self::MarkerInResultUnion as TypeMarker>::Owned: Decode<Self::MarkerInResultUnion, DefaultFuchsiaResourceDialect>,
<Self::MarkerInResultUnion as ValueTypeMarker>::Borrowed<'a>: for<'a> Encode<Self::MarkerInResultUnion, DefaultFuchsiaResourceDialect>;
}
Expand description
A trait for types that can be a FIDL request/response body.
This is implemented for ()
and FIDL structs, tables, and unions.
Implementation of fidl_message::Body.
Required Associated Types§
Sourcetype MarkerAtTopLevel: ValueTypeMarker<Owned = Self> + ValueTypeMarker + for<'a> ValueTypeMarker
where
<Self::MarkerAtTopLevel as TypeMarker>::Owned: Decode<Self::MarkerAtTopLevel, DefaultFuchsiaResourceDialect>,
<Self::MarkerAtTopLevel as ValueTypeMarker>::Borrowed<'a>: for<'a> Encode<Self::MarkerAtTopLevel, DefaultFuchsiaResourceDialect>
type MarkerAtTopLevel: ValueTypeMarker<Owned = Self> + ValueTypeMarker + for<'a> ValueTypeMarker where <Self::MarkerAtTopLevel as TypeMarker>::Owned: Decode<Self::MarkerAtTopLevel, DefaultFuchsiaResourceDialect>, <Self::MarkerAtTopLevel as ValueTypeMarker>::Borrowed<'a>: for<'a> Encode<Self::MarkerAtTopLevel, DefaultFuchsiaResourceDialect>
The marker type to use when the body is at the top-level.
Sourcetype MarkerInResultUnion: ValueTypeMarker<Owned = Self> + ValueTypeMarker + for<'a> ValueTypeMarker
where
<Self::MarkerInResultUnion as TypeMarker>::Owned: Decode<Self::MarkerInResultUnion, DefaultFuchsiaResourceDialect>,
<Self::MarkerInResultUnion as ValueTypeMarker>::Borrowed<'a>: for<'a> Encode<Self::MarkerInResultUnion, DefaultFuchsiaResourceDialect>
type MarkerInResultUnion: ValueTypeMarker<Owned = Self> + ValueTypeMarker + for<'a> ValueTypeMarker where <Self::MarkerInResultUnion as TypeMarker>::Owned: Decode<Self::MarkerInResultUnion, DefaultFuchsiaResourceDialect>, <Self::MarkerInResultUnion as ValueTypeMarker>::Borrowed<'a>: for<'a> Encode<Self::MarkerInResultUnion, DefaultFuchsiaResourceDialect>
The marker type to use when the body is nested in a result union.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.