У меня есть следующая структура словаря на Erlang:
Key: {element_name, a, element_type, type_1}
Value: [list].
Dictionary: (({element_name, a, element_type, type_1},[List]), ({element_name, b, element_type, type_2},[List])).
Я хотел бы обновить определенную пару ключ-значение и вставить новые данные в кортеж «ключ» (не в список «значение»):
1. Value_list = dict:fetch({element_name, a, element_type, _}, Dict).
2. Dict2 = dict:erase ({element_name, a, element_type, _}, Dict).
3. Dict3 = dict:store ({element_name, a, element_type, New_type}, Value_list, Dict2).
Проблема в том, что в строке 1 Эрланг говорит, что переменная "_" не связана.
Кажется, что я не могу получить значение, предоставив только часть ключа, если ключ является кортежем. Это правда?
Возможно ли обновить ключ в словаре?
Есть ли более короткий способ сделать это вместо 1,2 и 3?