mod_interface_runtime 0.1.1

Protocol of modularity unifying interface of a module and introducing layers.
Documentation
// /// Internal namespace.
// pub( crate ) mod private
// {
//   use crate::*;
//   use crate::abs::*;
//   use once_cell::sync::Lazy;
//   use std::sync::Mutex;
//   use dashmap::DashMap;
//   use std::sync::Arc;
//
//   static mut REGISTRY = Registry< Context >::new();
//
//   pub fn current() -> ContextChanger
//   {
//     Registry< Context >::current( &mut REGISTRY )
//   }
//
//   pub fn obtain() -> ContextChanger
//   {
//     Registry< Context >::obtain( &mut REGISTRY )
//   }
//
// }
//
// /// Protected namespace of the module.
// pub mod protected
// {
//   pub use super::
//   {
//     orphan::*,
//     private::REGISTRY,
//     private::current,
//     private::obtain,
//     // private::Registry,
//   };
// }
//
// pub use protected::*;
//
// /// Parented namespace of the module.
// pub mod orphan
// {
//   pub use super::
//   {
//     exposed::*,
//     // private:: Registry,
//   };
// }
//
// /// Exposed namespace of the module.
// pub mod exposed
// {
//   pub use super::
//   {
//     prelude::*,
//     // private::current as context,
//   };
// }
//
// pub use exposed::*;
//
// /// Prelude to use essentials: `use my_module::prelude::*`.
// pub mod prelude
// {
//   pub use super::private::
//   {
//   };
// }