Files
swift-musicbrainz/Sources/MusicBrainz/MusicBrainzEntityType.swift
2026-03-21 17:41:59 +01:00

21 lines
1.1 KiB
Swift

import Foundation
public struct MusicBrainzEntityType<T: MusicBrainzSearchable>: Sendable {
public let entity: MusicBrainzEntity
public static var area: MusicBrainzEntityType<Area> { .init(entity: .area) }
public static var artist: MusicBrainzEntityType<Artist> { .init(entity: .artist) }
public static var event: MusicBrainzEntityType<Event> { .init(entity: .event) }
public static var instrument: MusicBrainzEntityType<Instrument> { .init(entity: .instrument) }
public static var label: MusicBrainzEntityType<Label> { .init(entity: .label) }
public static var place: MusicBrainzEntityType<Place> { .init(entity: .place) }
public static var recording: MusicBrainzEntityType<Recording> { .init(entity: .recording) }
public static var release: MusicBrainzEntityType<Release> { .init(entity: .release) }
public static var releaseGroup: MusicBrainzEntityType<ReleaseGroup> {
.init(entity: .releaseGroup)
}
public static var series: MusicBrainzEntityType<Series> { .init(entity: .series) }
public static var work: MusicBrainzEntityType<Work> { .init(entity: .work) }
public static var url: MusicBrainzEntityType<URLReference> { .init(entity: .url) }
}