35 bool SelectFile(
const std::string& path,
int max_depth,
36 const std::string& extension,
const std::string keyword,
37 std::string* output)
const;
43 struct FileTreeData final {
44 FileTreeData() : path(
""), directory({}), file({}) {}
46 FileTreeData(
const std::string& _path,
47 const std::vector<FileTreeData>& _directory,
48 const std::vector<std::string>& _file)
49 : path(_path), directory(_directory), file(_file) {}
52 std::vector<FileTreeData> directory;
53 std::vector<std::string> file;
64 FileTreeData MakeFileTree(
const std::string& path,
int max_depth,
65 const std::string& extension,
66 const std::string keyword)
const;
75 void OutputFileTree(
const FileTreeData& tree,
int depth,
76 bool not_display_empty,
int* file_count)
const;
81 std::vector<std::string> MakeFileList(
const FileTreeData& tree)
const;