0ptr/models/base.py

28 lines
514 B
Python
Raw Normal View History

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()}'