У меня есть словарь, который я использую для хранения другого словаря, используя имя параметра.
Я получаю ошибку несоответствия справа.
вот мой код
handle_cast({setState, Id}, State) ->
Id0 = dict:new(),
DQueue = queue:new(),
UQueue = queue:new(),
Id1 = dict:store(dQueue, [DQueue], Id0),
Id2 = dict:store(uQueue, [UQueue], Id1),
Id3 = dict:store(dSpeed, [], Id2),
Id4 = dict:store(uSpeed, [], Id3),
D = dict:store(Id, [Id4], State),
State = D,
{noreply, State};
Я не уверен, откуда возникла ошибка. Я думал, что это может быть потому, что я храню Id в качестве ключа в главном словаре с новым внутренним словарем в качестве значения.
Мне нужно, чтобы имя внутреннего словаря было значением Id, так как их будет много, и мне понадобится доступ к ним по Id позже.
Правильно ли я настраиваю словарь? Разрешает ли erlang словари хранить словари?
Спасибо