Buckets:
| // | |
| // Copyright Aliaksei Levin (levlam@telegram.org), Arseny Smirnov (arseny30@gmail.com) 2014-2026 | |
| // | |
| // Distributed under the Boost Software License, Version 1.0. (See accompanying | |
| // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
| // | |
| int main(int argc, char *argv[]) { | |
| if (argc < 1) { | |
| return 1; | |
| } | |
| td::CSlice dir(argv[1]); | |
| int cnt = 0; | |
| auto status = td::walk_path(dir, [&](td::CSlice path, auto type) { | |
| if (type != td::WalkPath::Type::EnterDir) { | |
| cnt++; | |
| } | |
| auto type_name = [&] { | |
| switch (type) { | |
| case td::WalkPath::Type::EnterDir: | |
| return td::CSlice("Open"); | |
| case td::WalkPath::Type::ExitDir: | |
| return td::CSlice("Exit"); | |
| case td::WalkPath::Type::RegularFile: | |
| return td::CSlice("File"); | |
| case td::WalkPath::Type::Symlink: | |
| return td::CSlice("Link"); | |
| default: | |
| UNREACHABLE(); | |
| return td::CSlice(); | |
| } | |
| }(); | |
| LOG(INFO) << type_name << ' ' << path; | |
| //if (is_dir) { | |
| // td::rmdir(path); | |
| //} else { | |
| // td::unlink(path); | |
| //} | |
| }); | |
| LOG(INFO) << status << ": " << cnt; | |
| } | |
Xet Storage Details
- Size:
- 1.27 kB
- Xet hash:
- fe02e31826bf099388a011dcb77269ed5e816e0103fe5247ef4a75ab40603474
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.