pub struct DaemonSettings {
pub rpc_port: u16,
pub library_paths: Box<[PathBuf]>,
pub artist_separator: OneOrMany<String>,
pub protected_artist_names: OneOrMany<String>,
pub genre_separator: Option<String>,
pub conflict_resolution: MetadataConflictResolution,
pub log_level: LevelFilter,
}Fields§
§rpc_port: u16The port to listen on for RPC requests. Default is 6600.
library_paths: Box<[PathBuf]>The root paths of the music library.
artist_separator: OneOrMany<String>Separators for artist names in song metadata. For example, “Foo, Bar, Baz” would be split into [“Foo”, “Bar”, “Baz”]. if the separator is “, “. If the separator is not found, the entire string is considered as a single artist. If unset, will not split artists.
Users can provide one or many separators, and must provide them as either a single string or an array of strings.
[daemon]
artist_separator = " & "
artist_separator = [" & ", "; "]
...protected_artist_names: OneOrMany<String>Exceptions for artist name separation, for example: “Foo & Bar; Baz” would be split into [“Foo”, “Bar”, “Baz”] if the separators are set to “&” and “; “.
However, if the following exception is set:
[daemon]
protected_artist_names = ["Foo & Bar"]Then the artist “Foo & Bar; Baz” would be split into [“Foo & Bar”, “Baz”].
Note that the exception applies to the entire “name”, so:
[daemon]
protected_artist_names = ["Foo & Bar"]would split “Foo & Bar” into [“Foo & Bar”], but “Foo & Bar Baz” would still be split into [“Foo”, “Bar Baz”].
genre_separator: Option<String>§conflict_resolution: MetadataConflictResolutionhow conflicting metadata should be resolved “overwrite” - overwrite the metadata with new metadata “skip” - skip the file (keep old metadata)
log_level: LevelFilterWhat level of logging to use. Default is “info”.
Trait Implementations§
Source§impl Clone for DaemonSettings
impl Clone for DaemonSettings
Source§fn clone(&self) -> DaemonSettings
fn clone(&self) -> DaemonSettings
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for DaemonSettings
impl Debug for DaemonSettings
Source§impl Default for DaemonSettings
impl Default for DaemonSettings
Source§impl<'de> Deserialize<'de> for DaemonSettings
impl<'de> Deserialize<'de> for DaemonSettings
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for DaemonSettings
impl PartialEq for DaemonSettings
impl Eq for DaemonSettings
impl StructuralPartialEq for DaemonSettings
Auto Trait Implementations§
impl Freeze for DaemonSettings
impl RefUnwindSafe for DaemonSettings
impl Send for DaemonSettings
impl Sync for DaemonSettings
impl Unpin for DaemonSettings
impl UnwindSafe for DaemonSettings
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§unsafe fn to_subset_unchecked(&self) -> SS
unsafe fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.