Trait LoadFromFile

Source
pub trait LoadFromFile: Sized {
    type Error;

    // Required method
    fn load_from_file<'async_trait>(
        filename: impl 'async_trait + AsRef<Path> + Send,
    ) -> Pin<Box<dyn Future<Output = Result<Self, Self::Error>> + Send + 'async_trait>>
       where Self: 'async_trait;
}

Required Associated Types§

Required Methods§

Source

fn load_from_file<'async_trait>( filename: impl 'async_trait + AsRef<Path> + Send, ) -> Pin<Box<dyn Future<Output = Result<Self, Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait,

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.

Implementations on Foreign Types§

Source§

impl LoadFromFile for String

Implements LoadFromFile for Vec, reading its contents from a raw JSON file.

Source§

type Error = SaveLoadError

Source§

fn load_from_file<'async_trait>( filename: impl 'async_trait + AsRef<Path> + Send, ) -> Pin<Box<dyn Future<Output = Result<Self, Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait,

Source§

impl<K, V> LoadFromFile for HashMap<K, V>
where K: Serialize + DeserializeOwned + Eq + Hash + Send + Sync + 'static, V: Serialize + DeserializeOwned + Send + Sync + 'static,

Source§

type Error = SaveLoadError

Source§

fn load_from_file<'async_trait>( filename: impl 'async_trait + AsRef<Path> + Send, ) -> Pin<Box<dyn Future<Output = Result<Self, Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait,

Source§

impl<T> LoadFromFile for Vec<T>
where T: Serialize + DeserializeOwned + Send + Sync + 'static,

Implements LoadFromFile for Vec<T>, reading its contents from JSON array, where T: Serialize + DeserializeOwned + Send + Sync + 'static.

Source§

type Error = SaveLoadError

Source§

fn load_from_file<'async_trait>( filename: impl 'async_trait + AsRef<Path> + Send, ) -> Pin<Box<dyn Future<Output = Result<Self, Self::Error>> + Send + 'async_trait>>
where Self: 'async_trait,

Implementors§