oca-edi/odoo-bringout-oca-edi-base_wamas_ubl/base_wamas_ubl/lib/wamas/structure.py
2025-08-29 15:43:05 +02:00

25 lines
693 B
Python

# Copyright 2023 Jacques-Etienne Baudoux (BCIM) <je@bcim.be>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
import logging
_logger = logging.getLogger("wamas")
class obj:
def __init__(self, d):
for k, v in d.items():
if isinstance(v, (list, tuple)):
setattr(self, k, [obj(x) if isinstance(x, dict) else x for x in v])
else:
setattr(self, k, obj(v) if isinstance(v, dict) else v)
class MappingDict(dict):
"""
A dict that returns the key if there's no corresponding value
"""
def __missing__(self, key):
_logger.debug("No mapping found for key: %s", key)
return key