def remove_special_tags()

in src/loading_manifest/csv_to_json.py [0:0]


def remove_special_tags(ldm):
    def remove_list_tags(lst):
        for item in lst:
            if type(item) is dict:
                remove_dict_tags(item)
            elif type(item) is list:
                remove_list_tags(item)

    def remove_dict_tags(d):
        to_be_replaced = dict()
        for key, val in d.items():
            new_key = pattern_remove.sub('', key)
            if new_key != key:
                to_be_replaced[key] = new_key
            if type(val) is dict:
                remove_dict_tags(val)
            elif type(val) is list:
                remove_list_tags(val)
        for old_key, new_key in to_be_replaced.items():
            if d.get(new_key) is not None:
                raise Exception('Detected duplicate attributes:', old_key)
            d[new_key] = d.pop(old_key)

    remove_dict_tags(ldm)