Я хочу определить HashMap
с типом ключа String
, а тип значения - сам.
Я пытался написать что-то вроде:
HashMap<String, HashMap<String, ...>>
Я обнаружил, что это требует рекурсии, и я не знаю, как написать рекурсию в типе.
После прочтения Рекурсивные универсальные типы я попробовал:
type HashToHash = HashMap<String, HashToHash>
Однако я получил ошибку:
error[E0391]: cycle detected when processing `HashToHash`
--> src/lib.rs:3:35
|
3 | type HashToHash = HashMap<String, HashToHash>;
| ^^^^^^^^^^
|
= note: ...which again requires processing `HashToHash`, completing the cycle
Есть ли способ определитьтакого типа в Rust?