#![ cfg_attr( feature = "no_std", no_std ) ]
#![ doc( html_logo_url = "https://raw.githubusercontent.com/Wandalen/wTools/master/asset/img/logo_v3_trans_square.png" ) ]
#![ doc(
html_favicon_url = "https://raw.githubusercontent.com/Wandalen/wTools/alpha/asset/img/logo_v3_trans_square_icon_small_v2.ico"
) ]
#![ doc( html_root_url = "https://docs.rs/implements/latest/implements/" ) ]
#![ cfg_attr( all( doc, feature = "enabled" ), doc = include_str!( concat!( env!( "CARGO_MANIFEST_DIR" ), "/", "readme.md" ) ) ) ]
#![ cfg_attr( not( doc ), doc = "Implementation checking utilities" ) ]
#[ cfg( feature = "enabled" ) ]
mod implements_impl;
#[ cfg( feature = "enabled" ) ]
mod private
{
#[ macro_export ]
macro_rules! implements
{
( $( $arg: tt )+ ) =>
{
$crate::_implements!( $( $arg )+ );
}
}
#[ macro_export ]
macro_rules! instance_of
{
( $( $arg: tt )+ ) =>
{
$crate::_implements!( $( $arg )+ );
}
}
pub use implements;
pub use instance_of;
}
#[ doc( inline ) ]
#[ allow( unused_imports ) ]
#[ cfg( feature = "enabled" ) ]
pub use own::*;
#[ cfg( feature = "enabled" ) ]
#[ allow( unused_imports ) ]
pub mod own
{
use super::*;
#[ doc( inline ) ]
pub use orphan::*;
}
#[ cfg( feature = "enabled" ) ]
#[ allow( unused_imports ) ]
pub mod orphan
{
use super::*;
#[ doc( inline ) ]
pub use exposed::*;
}
#[ cfg( feature = "enabled" ) ]
#[ allow( unused_imports ) ]
pub mod exposed
{
use super::*;
#[ doc( inline ) ]
pub use prelude::*;
}
#[ cfg( feature = "enabled" ) ]
#[ allow( unused_imports ) ]
pub mod prelude
{
use super::{ private };
#[ doc( inline ) ]
pub use private::{ implements, instance_of };
}