Skip to main content

ObjectSource

Trait ObjectSource 

pub trait ObjectSource:
    Send
    + Sync
    + 'static {
    // Required methods
    fn try_get_stream(
        &mut self,
    ) -> Result<Box<dyn FixedSizedSource>, NetworkError>;
    fn get_source_name(&self) -> Result<String, NetworkError>;
    fn path(&self) -> Option<PathBuf>;

    // Provided method
    fn required_group_size(&self) -> Option<usize> { ... }
}

Required Methods§

fn try_get_stream(&mut self) -> Result<Box<dyn FixedSizedSource>, NetworkError>

fn get_source_name(&self) -> Result<String, NetworkError>

fn path(&self) -> Option<PathBuf>

Provided Methods§

fn required_group_size(&self) -> Option<usize>

The group size this source must be sent in. A stored RE-VFS object is data its owner encrypted group by group, which decrypts only in the groups it was encrypted in; any other source may be split as the sender chooses.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

§

impl ObjectSource for &'static str

Available on crate feature filesystem only.
§

fn try_get_stream(&mut self) -> Result<Box<dyn FixedSizedSource>, NetworkError>

§

fn get_source_name(&self) -> Result<String, NetworkError>

§

fn path(&self) -> Option<PathBuf>

§

impl ObjectSource for PathBuf

Available on crate feature filesystem only.
§

fn try_get_stream(&mut self) -> Result<Box<dyn FixedSizedSource>, NetworkError>

§

fn get_source_name(&self) -> Result<String, NetworkError>

§

fn path(&self) -> Option<PathBuf>

§

impl ObjectSource for String

Available on crate feature filesystem only.
§

fn try_get_stream(&mut self) -> Result<Box<dyn FixedSizedSource>, NetworkError>

§

fn get_source_name(&self) -> Result<String, NetworkError>

§

fn path(&self) -> Option<PathBuf>

§

impl<T> ObjectSource for Box<T>
where T: ObjectSource + ?Sized, Box<T>: Send + Sync + 'static,

§

fn try_get_stream(&mut self) -> Result<Box<dyn FixedSizedSource>, NetworkError>

§

fn get_source_name(&self) -> Result<String, NetworkError>

§

fn path(&self) -> Option<PathBuf>

§

fn required_group_size(&self) -> Option<usize>

Implementors§

§

impl ObjectSource for BytesSource