pub trait RtType {
type In;
type Abi;
type Out;
type OutNonNull;
unsafe fn unwrap(input: &Self::In) -> Self::Abi;
unsafe fn uninitialized() -> Self::Abi;
unsafe fn wrap(abi: Self::Abi) -> Self::Out;
}
Expand description
This is a trait implemented by all types that can be used as generic parameters of parameterized interfaces.
Abi
and OutNonNull
must be binary compatible (i.e. wrap
must basically be the same as transmute
)
in order to work in ComArray
.