| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Monatone.Writer
Synopsis
- data WriteError
- type Writer = ExceptT WriteError IO
- data MetadataUpdate = MetadataUpdate {
- updateTitle :: Maybe (Maybe Text)
- updateArtist :: Maybe (Maybe Text)
- updateAlbum :: Maybe (Maybe Text)
- updateAlbumArtist :: Maybe (Maybe Text)
- updateTrackNumber :: Maybe (Maybe Int)
- updateDiscNumber :: Maybe (Maybe Int)
- updateYear :: Maybe (Maybe Int)
- updateDate :: Maybe (Maybe Text)
- updateGenre :: Maybe (Maybe Text)
- updatePublisher :: Maybe (Maybe Text)
- updateComment :: Maybe (Maybe Text)
- updateReleaseCountry :: Maybe (Maybe Text)
- updateRecordLabel :: Maybe (Maybe Text)
- updateCatalogNumber :: Maybe (Maybe Text)
- updateBarcode :: Maybe (Maybe Text)
- updateAlbumArt :: Maybe (Maybe AlbumArt)
- emptyUpdate :: MetadataUpdate
- setTitle :: Text -> MetadataUpdate -> MetadataUpdate
- setArtist :: Text -> MetadataUpdate -> MetadataUpdate
- setAlbum :: Text -> MetadataUpdate -> MetadataUpdate
- setAlbumArtist :: Text -> MetadataUpdate -> MetadataUpdate
- setTrackNumber :: Int -> MetadataUpdate -> MetadataUpdate
- setDiscNumber :: Int -> MetadataUpdate -> MetadataUpdate
- setYear :: Int -> MetadataUpdate -> MetadataUpdate
- setDate :: Text -> MetadataUpdate -> MetadataUpdate
- setGenre :: Text -> MetadataUpdate -> MetadataUpdate
- setPublisher :: Text -> MetadataUpdate -> MetadataUpdate
- setComment :: Text -> MetadataUpdate -> MetadataUpdate
- setReleaseCountry :: Text -> MetadataUpdate -> MetadataUpdate
- setLabel :: Text -> MetadataUpdate -> MetadataUpdate
- setCatalogNumber :: Text -> MetadataUpdate -> MetadataUpdate
- setBarcode :: Text -> MetadataUpdate -> MetadataUpdate
- setAlbumArt :: AlbumArt -> MetadataUpdate -> MetadataUpdate
- clearTitle :: MetadataUpdate -> MetadataUpdate
- clearArtist :: MetadataUpdate -> MetadataUpdate
- clearAlbum :: MetadataUpdate -> MetadataUpdate
- clearComment :: MetadataUpdate -> MetadataUpdate
- removeAlbumArt :: MetadataUpdate -> MetadataUpdate
- writeMetadata :: Metadata -> Maybe AlbumArt -> OsPath -> Writer ()
- writeMetadataToFile :: Metadata -> Maybe AlbumArt -> OsPath -> Writer ()
- updateMetadata :: OsPath -> MetadataUpdate -> Writer ()
Write errors
data WriteError Source #
Write operation errors
Constructors
| WriteIOError Text | |
| UnsupportedWriteFormat AudioFormat | |
| InvalidMetadata Text | |
| CorruptedWrite Text |
Instances
| Show WriteError Source # | |
Defined in Monatone.Writer Methods showsPrec :: Int -> WriteError -> ShowS # show :: WriteError -> String # showList :: [WriteError] -> ShowS # | |
| Eq WriteError Source # | |
Defined in Monatone.Writer | |
Metadata updates
data MetadataUpdate Source #
Metadata update specification This represents what changes to make to existing metadata
Constructors
| MetadataUpdate | |
Fields
| |
Instances
| Show MetadataUpdate Source # | |
Defined in Monatone.Writer Methods showsPrec :: Int -> MetadataUpdate -> ShowS # show :: MetadataUpdate -> String # showList :: [MetadataUpdate] -> ShowS # | |
| Eq MetadataUpdate Source # | |
Defined in Monatone.Writer Methods (==) :: MetadataUpdate -> MetadataUpdate -> Bool # (/=) :: MetadataUpdate -> MetadataUpdate -> Bool # | |
emptyUpdate :: MetadataUpdate Source #
Empty metadata update (no changes)
Building updates
setTitle :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set title
setArtist :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set artist
setAlbum :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set album
setAlbumArtist :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set album artist
setTrackNumber :: Int -> MetadataUpdate -> MetadataUpdate Source #
Set track number
setDiscNumber :: Int -> MetadataUpdate -> MetadataUpdate Source #
Set disc number
setYear :: Int -> MetadataUpdate -> MetadataUpdate Source #
Set year
setDate :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set date
setGenre :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set genre
setPublisher :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set publisher
setComment :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set comment
setReleaseCountry :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set release country
setLabel :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set record label
setCatalogNumber :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set catalog number
setBarcode :: Text -> MetadataUpdate -> MetadataUpdate Source #
Set barcode
setAlbumArt :: AlbumArt -> MetadataUpdate -> MetadataUpdate Source #
Set album art
Clearing fields
clearTitle :: MetadataUpdate -> MetadataUpdate Source #
Clear title field
clearArtist :: MetadataUpdate -> MetadataUpdate Source #
Clear artist field
clearAlbum :: MetadataUpdate -> MetadataUpdate Source #
Clear album field
clearComment :: MetadataUpdate -> MetadataUpdate Source #
Clear comment field
removeAlbumArt :: MetadataUpdate -> MetadataUpdate Source #
Remove album art
Writing operations
writeMetadata :: Metadata -> Maybe AlbumArt -> OsPath -> Writer () Source #
Write complete metadata to a new file
writeMetadataToFile :: Metadata -> Maybe AlbumArt -> OsPath -> Writer () Source #
Write metadata to the same file (with backup)
updateMetadata :: OsPath -> MetadataUpdate -> Writer () Source #
Update existing file with metadata changes