tool dandy.tool.tool BaseTool Bases: ABC Source code in dandy/tool/tool.py 5 6 7 8 9def __init__(self) -> None: if not self.setup(): print(f"Failed to setup {self.__class__.__name__}") self.__post_init__() __post_init__ Source code in dandy/tool/tool.py 11 12def __post_init__(self) -> None: pass setup Source code in dandy/tool/tool.py 14 15def setup(self) -> None: raise NotImplementedError