diff --git a/src/polystar/utils/time.py b/src/polystar/utils/time.py index 8d2073f8f23654a93b881e0121d922e61a088e81..f855fe619704f2fa5e0d4529d91d66cabae73787 100644 --- a/src/polystar/utils/time.py +++ b/src/polystar/utils/time.py @@ -1,5 +1,18 @@ from datetime import datetime +from functools import wraps +from typing import Callable def create_time_id() -> str: return datetime.now().strftime("%Y%m%d_%H%M%S") + + +def time_it(f: Callable): + @wraps(f) + def _f(*args, **kwargs): + t = datetime.now() + rv = f(*args, **kwargs) + print(f"{f.__name__} took {datetime.now() - t}") + return rv + + return _f