//! Traits for communicating layout guarantees.
//!
//! ```rust
//! use typic::{self, stability::*};
//!
//! #[typic::repr(C)]
//! #[derive(StableABI)]
//! struct Foo(u8, u16, u32);
//! ```
//use crate::private::layout::{self, Layout};
use crateLayout;
use crate;
use cratePublic;
/// Implements [`TransmutableInto`] and [`TransmutableFrom`] for a
/// type, using that type as its own ABI bound.
///
/// You must not make any changes to this type that narrows the
/// visibility of its fields or changes its layout.
pub use StableABI;
/// Assert that `Self` is always transmutable into `Type`.
pub unsafe
/// Assert that `Self` is always transmutable from `Type`.
pub unsafe