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 { ... }
}

Required Methods§

Source

fn surface(&self) -> Surface

Source

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,

Source

fn inject<'life0, 'async_trait>( &'life0 self, wave: UltraWave, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Source

fn exchanger(&self) -> &Exchanger

Provided Methods§

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Source

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,

Implementors§