Rust является статически типизированным языком, поэтому вам нужно заранее сообщить компилятору точный тип элементов в вашем HashMap
. Поскольку каждая запись может быть именем файла или другим HashMap
, самое простое решение - использовать тип enum
:
enum Entry {
File(String),
Directory(HashMap<String, Entry>),
}
. Это позволяет моделировать произвольное вложение.