From 5ef50a29c510394bec5995a24d625516f3bf2bb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Jan=C3=9Fen?= Date: Wed, 20 Dec 2023 16:06:10 +0100 Subject: [PATCH 1/2] HasHDF: Add _store_type_to_dict() --- pyiron_base/interfaces/has_hdf.py | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/pyiron_base/interfaces/has_hdf.py b/pyiron_base/interfaces/has_hdf.py index e4198ed69..c28dd749d 100644 --- a/pyiron_base/interfaces/has_hdf.py +++ b/pyiron_base/interfaces/has_hdf.py @@ -172,13 +172,20 @@ def from_hdf_args(cls, hdf: ProjectHDFio) -> dict: """ return {} - def _store_type_to_hdf(self, hdf: ProjectHDFio): - hdf["NAME"] = self.__class__.__name__ - hdf["TYPE"] = str(type(self)) - hdf["OBJECT"] = hdf["NAME"] # unused alias + def _store_type_to_dict(self): + type_dict = { + "NAME": self.__class__.__name__, + "TYPE": str(type(self)), + "OBJECT": self.__class__.__name__, # unused alias + "HDF_VERSION": self.__hdf_version__, + } if hasattr(self, "__version__"): - hdf["VERSION"] = self.__version__ - hdf["HDF_VERSION"] = self.__hdf_version__ + type_dict["VERSION"] = self.__version__ + return type_dict + + def _store_type_to_hdf(self, hdf: ProjectHDFio): + for k, v in self._store_type_to_dict().items(): + hdf[k] = v def from_hdf(self, hdf: ProjectHDFio, group_name: str = None): """ From 5c919698a7fcc4f4ddb84cba3c64009f7eb6b136 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Jan=C3=9Fen?= Date: Wed, 20 Dec 2023 16:08:42 +0100 Subject: [PATCH 2/2] Remove _store_type_to_hdf() --- pyiron_base/interfaces/has_hdf.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/pyiron_base/interfaces/has_hdf.py b/pyiron_base/interfaces/has_hdf.py index c28dd749d..ea5af1949 100644 --- a/pyiron_base/interfaces/has_hdf.py +++ b/pyiron_base/interfaces/has_hdf.py @@ -183,10 +183,6 @@ def _store_type_to_dict(self): type_dict["VERSION"] = self.__version__ return type_dict - def _store_type_to_hdf(self, hdf: ProjectHDFio): - for k, v in self._store_type_to_dict().items(): - hdf[k] = v - def from_hdf(self, hdf: ProjectHDFio, group_name: str = None): """ Read object to HDF. @@ -224,7 +220,8 @@ def to_hdf(self, hdf: ProjectHDFio, group_name: str = None): ): raise ValueError("HDF group must be empty when group_name is not set.") self._to_hdf(hdf) - self._store_type_to_hdf(hdf) + for k, v in self._store_type_to_dict().items(): + hdf[k] = v def rewrite_hdf(self, hdf: ProjectHDFio, group_name: str = None): """