Trait TraversalLayer
Source pub trait TraversalLayer {
// Required methods
fn surface(&self) -> Surface;
fn traverse_next<'life0, 'async_trait>(
&'life0 self,
traversal: Traversal<UltraWave>,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn inject<'life0, 'async_trait>(
&'life0 self,
wave: UltraWave,
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn exchanger(&self) -> &Exchanger;
// Provided methods
fn deliver_directed<'life0, 'async_trait>(
&'life0 self,
direct: Traversal<DirectedWave>,
) -> Pin<Box<dyn Future<Output = Result<(), SpaceErr>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'life0: 'async_trait { ... }
fn deliver_reflected<'life0, 'async_trait>(
&'life0 self,
reflect: Traversal<ReflectedWave>,
) -> Pin<Box<dyn Future<Output = Result<(), SpaceErr>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'life0: 'async_trait { ... }
fn visit<'life0, 'async_trait>(
&'life0 self,
traversal: Traversal<UltraWave>,
) -> Pin<Box<dyn Future<Output = Result<(), SpaceErr>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'life0: 'async_trait { ... }
fn directed_fabric_bound<'life0, 'async_trait>(
&'life0 self,
traversal: Traversal<DirectedWave>,
) -> Pin<Box<dyn Future<Output = Result<(), SpaceErr>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'life0: 'async_trait { ... }
fn directed_core_bound<'life0, 'async_trait>(
&'life0 self,
traversal: Traversal<DirectedWave>,
) -> Pin<Box<dyn Future<Output = Result<(), SpaceErr>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'life0: 'async_trait { ... }
fn reflected_core_bound<'life0, 'async_trait>(
&'life0 self,
traversal: Traversal<ReflectedWave>,
) -> Pin<Box<dyn Future<Output = Result<(), SpaceErr>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'life0: 'async_trait { ... }
fn reflected_fabric_bound<'life0, 'async_trait>(
&'life0 self,
traversal: Traversal<ReflectedWave>,
) -> Pin<Box<dyn Future<Output = Result<(), SpaceErr>> + Send + 'async_trait>>
where Self: Sync + 'async_trait,
'life0: 'async_trait { ... }
}