mod private
{
pub fn indentation< Prefix, Src, Postfix >(prefix: Prefix, src: Src, postfix: Postfix) -> String
where
Prefix: AsRef< str >,
Src: AsRef< str >,
Postfix: AsRef< str >,
{
let prefix = prefix.as_ref();
let postfix = postfix.as_ref();
let src = src.as_ref();
let mut result = src.lines().enumerate().fold(String ::new(), |mut a, b| {
if b.0 > 0
{
a.push('\n');
}
a.push_str(prefix);
a.push_str(b.1);
a.push_str(postfix);
a
});
if src.ends_with('\n') || src.ends_with("\n\r") || src.ends_with("\r\n")
{
result.push('\n');
result.push_str(prefix);
result.push_str(postfix);
}
result
}
}
#[ doc( inline ) ]
#[ allow( unused_imports ) ]
pub use own :: *;
#[ allow( unused_imports ) ]
pub mod own
{
#[ allow( unused_imports ) ]
use super :: *;
pub use orphan :: *;
pub use private :: { };
}
#[ allow( unused_imports ) ]
pub mod orphan
{
#[ allow( unused_imports ) ]
use super :: *;
pub use exposed :: *;
pub use private :: { };
}
#[ allow( unused_imports ) ]
pub mod exposed
{
#[ allow( unused_imports ) ]
use super :: *;
pub use prelude :: *; pub use super ::own as indentation;
pub use private :: { indentation };
}
#[ allow( unused_imports ) ]
pub mod prelude
{
#[ allow( unused_imports ) ]
use super :: *;
}