Struct Artist

Source
pub struct Artist {
    pub id: Id,
    pub name: String,
    pub sort_name: String,
    pub key: String,
    pub mbid: Option<String>,
    pub aliases: Vec<String>,
}
Expand description

Person or group. The person/group distinction will come from MusicBrainz.

Fields§

§id: Id

Position in Catalog::artists; credits and relations refer to it.

§name: String

Name exactly as written in the tags, before normalization.

§sort_name: String

Filing form, with a leading article moved to the end: Beatles, The.

§key: String

Normalized matching key (see crate::text::normalize).

§mbid: Option<String>

MusicBrainz identifier, when one of the files carried it.

§aliases: Vec<String>

Other spellings of this name, merged in because the files carrying them carried the same MusicBrainz identifier.

Kept so the merge can be seen. Two rows becoming one is a decision, and a decision the reader cannot see is one they cannot check: a shelf that lists Ozzy Osbourne and no longer lists O. Osbourne leaves them unable to tell a merge that happened from a folder that was never scanned. Normalised, since that is the form the merge was decided on, and sorted so two runs over one library answer alike.

Trait Implementations§

Source§

impl Clone for Artist

Source§

fn clone(&self) -> Artist

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Artist

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Artist

Source§

fn default() -> Artist

Returns the “default value” for a type. Read more

Auto Trait Implementations§

§

impl Freeze for Artist

§

impl RefUnwindSafe for Artist

§

impl Send for Artist

§

impl Sync for Artist

§

impl Unpin for Artist

§

impl UnwindSafe for Artist

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<S> FromSample<S> for S

§

fn from_sample_(s: S) -> S

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<F, T> IntoSample<T> for F
where T: FromSample<F>,

§

fn into_sample(self) -> T

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
§

impl<T, U> ToSample<U> for T
where U: FromSample<T>,

§

fn to_sample_(self) -> U

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<S, T> Duplex<S> for T
where T: FromSample<S> + ToSample<S>,