/*!
a cheap wrapper that construct a new type, generic over the input type
the 4 trait variants are as follows:
* a [`Wrapper`] is a cheap wrapper that constructs a new type, generic over the input type
* a [`WrapperRef`] is a cheap wrapper that constructs a new type that holds a reference to the input, generic over the input type
* a [`TryWrapper`] is a cheap wrapper that constructs a new type, generic over the input type, that can fail
* a [`TryWrapperRef`] is a cheap wrapper that constructs a new type that holds a reference to the input, generic over the input type, that can fail
*/
use Borrow;