// Provides the default `mpi::Root`.
//
// This exists because I had to give up on making the final product generic over Communicators.
//
// It is returned continuation-style because it is impossible to construct one that is `'static`.
Provides the default `mpi::Root`.
This exists because I had to give up on making the final product generic over Communicators.

It is returned continuation-style because it is impossible to construct one that is `'static`.
Provides the default ` mpi :: Root ` . This exists because I had to give up on making the final product generic over Communicators . It is returned continuation - style because it is impossible to construct one that is ` ' static ` .
fn with_default_root<R>(continuation: impl FnOnce(mpi::Process<'_, mpi::SystemCommunicator>) -> R) -> R {
    use crate::mpi::Communicator;
    let world = mpi::SystemCommunicator::world();
    let root = world.process_at_rank(0);
    continuation(root)
}
fn with_default_root < R > ( continuation : impl FnOnce ( mpi :: Process < ' _ , mpi :: SystemCommunicator > ) -> R ) -> R { use crate :: mpi :: Communicator ; let world = mpi :: SystemCommunicator :: world ( ) ; let root = world . process_at_rank ( 0 ) ; continuation ( root ) }
Provides the default `mpi::Root`.
Provides the default ` mpi :: Root ` .
continuation
impl FnOnce(mpi::Process<'_, mpi::SystemCommunicator>) -> R