Struct repc::layout::Type [−][src]
pub struct Type<I> where
I: Layout, {
pub layout: <I as Layout>::TypeLayout,
pub annotations: Vec<Annotation, Global>,
pub variant: TypeVariant<I>,
}
Expand description
A C type.
Fields
layout: <I as Layout>::TypeLayout
The layout of the type.
annotations: Vec<Annotation, Global>
The annotations on this type.
variant: TypeVariant<I>
The variant of the type.
Implementations
pub fn into<J>(self) -> Type<J> where
J: Layout,
<I as Layout>::TypeLayout: Into<<J as Layout>::TypeLayout>,
<I as Layout>::FieldLayout: Into<<J as Layout>::FieldLayout>,
<I as Layout>::OpaqueLayout: Into<<J as Layout>::OpaqueLayout>,
pub fn into<J>(self) -> Type<J> where
J: Layout,
<I as Layout>::TypeLayout: Into<<J as Layout>::TypeLayout>,
<I as Layout>::FieldLayout: Into<<J as Layout>::FieldLayout>,
<I as Layout>::OpaqueLayout: Into<<J as Layout>::OpaqueLayout>,
Returns the identical type with the Layout
converted.
Trait Implementations
Auto Trait Implementations
impl<I> RefUnwindSafe for Type<I> where
<I as Layout>::FieldLayout: RefUnwindSafe,
<I as Layout>::OpaqueLayout: RefUnwindSafe,
<I as Layout>::TypeLayout: RefUnwindSafe,
impl<I> Send for Type<I> where
<I as Layout>::FieldLayout: Send,
<I as Layout>::OpaqueLayout: Send,
<I as Layout>::TypeLayout: Send,
impl<I> Sync for Type<I> where
<I as Layout>::FieldLayout: Sync,
<I as Layout>::OpaqueLayout: Sync,
<I as Layout>::TypeLayout: Sync,
impl<I> Unpin for Type<I> where
<I as Layout>::FieldLayout: Unpin,
<I as Layout>::OpaqueLayout: Unpin,
<I as Layout>::TypeLayout: Unpin,
impl<I> UnwindSafe for Type<I> where
<I as Layout>::FieldLayout: UnwindSafe,
<I as Layout>::OpaqueLayout: UnwindSafe,
<I as Layout>::TypeLayout: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more