Skip to main content

Desired

Struct Desired 

Source
pub struct Desired {
    pub clip: Clip,
    pub lineage: LineageContext,
    pub path: String,
    pub format: AudioFormat,
    pub meta_hash: String,
    pub art_hash: String,
    pub modes: Vec<SourceMode>,
    pub trashed: bool,
    pub private: bool,
    pub artifacts: Vec<DesiredArtifact>,
}
Expand description

One desired clip in the current selection.

The caller has already deduped per account and resolved naming and format, so each entry is the authoritative target state for one clip. modes lists every selected source that currently holds the clip, so a clip can be held by a Mirror and a Copy source at once.

Fields§

§clip: Clip

The clip itself, carried so actions can be executed without a re-fetch.

§lineage: LineageContext

The clip’s resolved lineage, carried so the executor tags with the same root/parent/album that drove naming and the change hash.

§path: String

Resolved relative target path for the file.

§format: AudioFormat

Resolved target format.

§meta_hash: String

Hash of the clip’s tag-bearing metadata.

§art_hash: String

Hash of the clip’s cover art.

§modes: Vec<SourceMode>

Every selected source that currently holds this clip.

§trashed: bool

True when the clip is trashed in Suno (removed from the source).

§private: bool

True when the clip is private; private clips are always kept.

§artifacts: Vec<DesiredArtifact>

The clip’s desired external artifacts (cover.jpg, cover.webp, …).

This is the authoritative target set of sidecars for the clip: an artifact present here is written when missing or changed, and a manifest artifact absent here is a removed kind and reconciled for deletion. It defaults to empty; later phases populate it (P7 covers per-song art), so for now every production caller passes an empty vec and only tests set it.

Trait Implementations§

Source§

impl Clone for Desired

Source§

fn clone(&self) -> Desired

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for Desired

Source§

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

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

impl PartialEq for Desired

Source§

fn eq(&self, other: &Desired) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for Desired

Auto Trait Implementations§

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.

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.

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
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.