Skip to content

Commit 2478274

Browse files
committed
define level map at object level
1 parent 6fe004e commit 2478274

File tree

1 file changed

+7
-12
lines changed

1 file changed

+7
-12
lines changed

src/pynxtools/dataconverter/nexus_tree.py

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,11 @@ class NexusNode(NodeMixin):
169169
Optional[int],
170170
Optional[int],
171171
] = (None, None)
172+
lvl_map = {
173+
"required": ("required",),
174+
"recommended": ("recommended", "required"),
175+
"optional": ("optional", "recommended", "required"),
176+
}
172177

173178
def _set_optionality(self):
174179
"""
@@ -411,14 +416,9 @@ def required_groups(
411416
Returns:
412417
list[str]: A list of required fields and attributes names.
413418
"""
414-
lvl_map = {
415-
"required": ("required",),
416-
"recommended": ("recommended", "required"),
417-
"optional": ("optional", "recommended", "required"),
418-
}
419419

420420
req_children = []
421-
optionalities = lvl_map.get(level, ("required",))
421+
optionalities = self.lvl_map.get(level, ("required",))
422422
for child in self.children:
423423
if child.optionality not in optionalities:
424424
continue
@@ -462,14 +462,9 @@ def required_fields_and_attrs_names(
462462
Returns:
463463
list[str]: A list of required fields and attributes names.
464464
"""
465-
lvl_map = {
466-
"required": ("required",),
467-
"recommended": ("recommended", "required"),
468-
"optional": ("optional", "recommended", "required"),
469-
}
470465

471466
req_children = []
472-
optionalities = lvl_map.get(level, ("required",))
467+
optionalities = self.lvl_map.get(level, ("required",))
473468
for child in self.children:
474469
if child.optionality not in optionalities:
475470
continue

0 commit comments

Comments
 (0)