1#![cfg_attr(not(feature = "std"), no_std)]
10#![deny(unconditional_recursion)]
11#![doc = include_str!("../README.md")]
12
13#[cfg(all(feature = "alloc", not(feature = "std")))]
14extern crate alloc;
15
16pub mod impls;
18
19mod traits;
21pub use traits::*;
22
23#[doc(hidden)]
24#[allow(private_bounds)]
25pub trait ImplBound: ImplBoundPriv {}
26#[doc(hidden)]
27pub(crate) trait ImplBoundPriv {}
28impl<T: ?Sized + ImplBoundPriv> ImplBound for T {}
29#[doc(hidden)]
30pub struct Ref<'a, T: ?Sized>(&'a T);
31impl<T: ?Sized> ImplBoundPriv for Ref<'_, T> {}