use macro_tools ::diag;
use super :: *;
use derive_tools_meta ::From;
use test_tools ::a_id;
#[ derive( Debug, Clone, Copy, PartialEq, From ) ]
#[ allow( dead_code ) ]
pub struct IsTransparentSimple(bool);
#[ derive( Debug, Clone, Copy, PartialEq, From ) ]
#[ allow( dead_code ) ]
pub struct IsTransparentComplex< 'a, 'b: 'a, T, U: ToString + ?Sized >(#[ from ] &'a T, core ::marker ::PhantomData< &'b U >)
where
'a: 'b,
T: AsRef< U >;
#[ test ]
fn from_test()
{
a_id!(IsTransparentSimple ::from(true), IsTransparentSimple(true));
let got_tmp = "hello".to_string();
a_id!(IsTransparentComplex :: < '_, '_, String, str > ::from(&got_tmp), IsTransparentComplex :: < '_, '_, String, str >(&got_tmp, core ::marker ::PhantomData));
}