fidl_message

Trait Body

Source
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§

Source

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.

Source

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.

Implementations on Foreign Types§

Source§

impl Body for ()

Implementors§