from typing import Optional from os import path from . import cktype class FILE: def __init__(self, fpath: str, esum: Optional[str] = None): self.fpath = fpath self.fname = path.basename(fpath) self.csum, self.esum = cktype.resolve(self.fname, esum) def __repr__(self): return self.fname def verify(self) -> Optional[bool]: if self.esum is None: return None return self.csum.__repr__() == self.esum