pub trait CasTxLibraryExtensions {
// Required methods
fn album_set_and_relink_tracks(
&mut self,
album: Album,
tracks: Vec<Track>,
) -> Result<(Album, Vec<Track>), TransactionError>;
fn album_set_and_relink_artists(
&mut self,
album_id: Album,
artists: impl IntoIterator<Item = Artist>,
) -> Result<(Album, Vec<Artist>), TransactionError>;
fn relink_track_to_album(
&mut self,
track_id: TrackId,
album: Option<AlbumId>,
) -> Result<bool, TransactionError>;
}Required Methods§
fn album_set_and_relink_tracks( &mut self, album: Album, tracks: Vec<Track>, ) -> Result<(Album, Vec<Track>), TransactionError>
fn album_set_and_relink_artists( &mut self, album_id: Album, artists: impl IntoIterator<Item = Artist>, ) -> Result<(Album, Vec<Artist>), TransactionError>
fn relink_track_to_album( &mut self, track_id: TrackId, album: Option<AlbumId>, ) -> Result<bool, TransactionError>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl CasTxLibraryExtensions for CompareAndSwapTransaction<LibraryDb>
impl CasTxLibraryExtensions for CompareAndSwapTransaction<LibraryDb>
Source§fn relink_track_to_album(
&mut self,
track_id: TrackId,
album: Option<AlbumId>,
) -> Result<bool, TransactionError>
fn relink_track_to_album( &mut self, track_id: TrackId, album: Option<AlbumId>, ) -> Result<bool, TransactionError>
Applies a two-way relinking operation, relinking to the track to a new (or no) album, and disconnecting the tracks old album, if any
Source§fn album_set_and_relink_artists(
&mut self,
album: Album,
artists: impl IntoIterator<Item = Artist>,
) -> Result<(Album, Vec<Artist>), TransactionError>
fn album_set_and_relink_artists( &mut self, album: Album, artists: impl IntoIterator<Item = Artist>, ) -> Result<(Album, Vec<Artist>), TransactionError>
Applies a two-way relinking operation, relinking artists to the album, and disconnecting references from removed artists