69 lines
1.5 KiB
Python
69 lines
1.5 KiB
Python
|
#!/usr/bin/python3
|
||
|
|
||
|
|
||
|
class WBZM3UData:
|
||
|
is_comment = False
|
||
|
type: "WBZM3UData"
|
||
|
|
||
|
class Header:
|
||
|
is_comment = True
|
||
|
|
||
|
class Path(str):
|
||
|
pass
|
||
|
|
||
|
class URL(str):
|
||
|
pass
|
||
|
|
||
|
class SortOrder:
|
||
|
is_comment = True
|
||
|
|
||
|
track_title = 0
|
||
|
track_artist = 1
|
||
|
track_album = 2
|
||
|
track_genre = 3
|
||
|
custom_sorting = 4
|
||
|
|
||
|
def __init__(self, sort_by: int, ascending: bool):
|
||
|
self.sort_by = sort_by
|
||
|
self.ascending = ascending
|
||
|
|
||
|
class TrackMetadata:
|
||
|
class TrackTitle(str):
|
||
|
is_comment = True
|
||
|
|
||
|
class TrackArtist(str):
|
||
|
is_comment = True
|
||
|
|
||
|
class TrackAlbum(str):
|
||
|
is_comment = True
|
||
|
|
||
|
class TrackGenre(str):
|
||
|
is_comment = True
|
||
|
|
||
|
|
||
|
class WBZM3UData(WBZM3UData):
|
||
|
class Header(WBZM3UData.Header, WBZM3UData):
|
||
|
pass
|
||
|
|
||
|
class Path(WBZM3UData.Path, WBZM3UData, str):
|
||
|
pass
|
||
|
|
||
|
class URL(WBZM3UData.URL, WBZM3UData, str):
|
||
|
pass
|
||
|
|
||
|
class SortOrder(WBZM3UData.SortOrder, WBZM3UData):
|
||
|
pass
|
||
|
|
||
|
class TrackMetadata(WBZM3UData.TrackMetadata, WBZM3UData):
|
||
|
class TrackTitle(WBZM3UData.TrackMetadata.TrackTitle, WBZM3UData.TrackMetadata, str):
|
||
|
pass
|
||
|
|
||
|
class TrackArtist(WBZM3UData.TrackMetadata.TrackArtist, WBZM3UData.TrackMetadata, str):
|
||
|
pass
|
||
|
|
||
|
class TrackAlbum(WBZM3UData.TrackMetadata.TrackAlbum, WBZM3UData.TrackMetadata, str):
|
||
|
pass
|
||
|
|
||
|
class TrackGenre(WBZM3UData.TrackMetadata.TrackGenre, str):
|
||
|
pass
|