pub struct ChangedJsonFile<R>where
R: DeserializeOwned,{ /* private fields */ }Expand description
A wrapper around JsonFile which can be used to read the contents of a file and only return the contents if they have changed since the last read.
Implementations§
Source§impl<R> ChangedJsonFile<R>where
R: DeserializeOwned + PartialEq,
impl<R> ChangedJsonFile<R>where
R: DeserializeOwned + PartialEq,
Sourcepub fn new<P: AsRef<Path>>(
path: P,
unblocker: impl Into<Arc<dyn Unblocker>>,
) -> Result<ChangedJsonFile<R>, LogFSError>
pub fn new<P: AsRef<Path>>( path: P, unblocker: impl Into<Arc<dyn Unblocker>>, ) -> Result<ChangedJsonFile<R>, LogFSError>
Opens the file at the provided path and returns a ChangedJsonFile which can be used to read the contents of the file.
Sourcepub fn content(&mut self) -> Result<Option<R>, LogFSError>
pub fn content(&mut self) -> Result<Option<R>, LogFSError>
Returns the current contents of the file as a deserialized object, or None if the contents haven’t changed since the last read or if the file is empty (which happens when the game clears the file before it starts to write.)
Sourcepub async fn content_async(&mut self) -> Result<Option<R>, LogFSError>
Available on crate feature asynchronous only.
pub async fn content_async(&mut self) -> Result<Option<R>, LogFSError>
asynchronous only.The same as ChangedJsonFile::content, but asynchronous.
Auto Trait Implementations§
impl<R> Freeze for ChangedJsonFile<R>
impl<R> RefUnwindSafe for ChangedJsonFile<R>where
R: RefUnwindSafe,
impl<R> Send for ChangedJsonFile<R>where
R: Send,
impl<R> Sync for ChangedJsonFile<R>where
R: Sync,
impl<R> Unpin for ChangedJsonFile<R>where
R: Unpin,
impl<R> UnsafeUnpin for ChangedJsonFile<R>
impl<R> UnwindSafe for ChangedJsonFile<R>where
R: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more