2023-06-09 20:20:46 +00:00
|
|
|
from copy import deepcopy
|
|
|
|
|
2023-06-09 11:19:47 +00:00
|
|
|
class Base:
|
|
|
|
symbol: str
|
|
|
|
|
|
|
|
def __init__(self, symbol, store):
|
|
|
|
self.symbol = symbol
|
|
|
|
self.store = store
|
2023-06-09 20:20:46 +00:00
|
|
|
self.dirty = True
|
|
|
|
|
|
|
|
def dict(self):
|
|
|
|
r = deepcopy(self.__dict__)
|
|
|
|
del r['store']
|
|
|
|
del r['dirty']
|
|
|
|
return r
|
2023-06-09 11:19:47 +00:00
|
|
|
|
|
|
|
def path(self):
|
|
|
|
raise NotImplementedError('path')
|
|
|
|
|
|
|
|
def ext(self):
|
|
|
|
raise NotImplementedError('extension')
|
|
|
|
|
|
|
|
def type(self):
|
|
|
|
return self.__class__.__name__
|
|
|
|
|
|
|
|
def __str__(self):
|
|
|
|
return f'{self.symbol}.{self.ext()}'
|