Вот необходимо обойти дерево каталогов и собрать пути к файлам. Без всяких сторонних библиотек и тд. Вопрос в следующем можно ли использовать для обхода обычную рекурсию, а результаты складировать в вектор, не вызовет ли это переполнение стека, где будет расти вектор в куче или в стеке? В принципе можно ли использовать рекурсию для обхода дерева на сколько это правильно? Псевдо код такой:
pub fn walk(path: dir) -> io::Result<()> {
for i in dirs{
if i=="dirs"{
walk(i);
}else {
all_files.push(i);
}
}
}