Trait HlCommsInterface

Source
pub trait HlCommsInterface: HlComms {
    // Provided methods
    fn axi_translate(&self, addr: impl AsRef<str>) -> Result<AxiData, AxiError> { ... }
    fn axi_sread<'a>(
        &self,
        addr: impl AsRef<str>,
        value: &'a mut [u8],
    ) -> Result<&'a [u8], PlatformError> { ... }
    fn axi_sread_to_vec(
        &self,
        addr: impl AsRef<str>,
    ) -> Result<Vec<u8>, PlatformError> { ... }
    fn axi_sread32(&self, addr: impl AsRef<str>) -> Result<u32, PlatformError> { ... }
    fn axi_swrite(
        &self,
        addr: impl AsRef<str>,
        value: &[u8],
    ) -> Result<(), PlatformError> { ... }
    fn axi_swrite32(
        &self,
        addr: impl AsRef<str>,
        value: u32,
    ) -> Result<(), PlatformError> { ... }
}
Expand description

These functions can’ be stored as a fat pointer so they are split out here. There is a blanket implementation for all types that implement HlComms.

Provided Methods§

Source

fn axi_translate(&self, addr: impl AsRef<str>) -> Result<AxiData, AxiError>

Source

fn axi_sread<'a>( &self, addr: impl AsRef<str>, value: &'a mut [u8], ) -> Result<&'a [u8], PlatformError>

Source

fn axi_sread_to_vec( &self, addr: impl AsRef<str>, ) -> Result<Vec<u8>, PlatformError>

Source

fn axi_sread32(&self, addr: impl AsRef<str>) -> Result<u32, PlatformError>

Source

fn axi_swrite( &self, addr: impl AsRef<str>, value: &[u8], ) -> Result<(), PlatformError>

Source

fn axi_swrite32( &self, addr: impl AsRef<str>, value: u32, ) -> Result<(), PlatformError>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§