]> git.ipfire.org Git - thirdparty/ccache.git/commitdiff
chore: Clean up usage of #include in headers
authorJoel Rosdahl <joel@rosdahl.net>
Sat, 17 Feb 2024 08:46:41 +0000 (09:46 +0100)
committerJoel Rosdahl <joel@rosdahl.net>
Sun, 18 Feb 2024 10:57:30 +0000 (11:57 +0100)
39 files changed:
src/Args.hpp
src/Config.cpp
src/Config.hpp
src/Context.hpp
src/Depfile.hpp
src/Hash.hpp
src/InodeCache.hpp
src/Util.hpp
src/ccache.hpp
src/core/CacheEntry.cpp
src/core/CacheEntry.hpp
src/core/FileRecompressor.hpp
src/core/Manifest.hpp
src/core/Result.hpp
src/core/ResultExtractor.hpp
src/core/ResultInspector.hpp
src/core/ResultRetriever.hpp
src/core/Statistics.hpp
src/execute.hpp
src/storage/Storage.hpp
src/storage/local/LocalStorage.hpp
src/storage/remote/FileStorage.hpp
src/storage/remote/HttpStorage.hpp
src/storage/remote/RedisStorage.hpp
src/storage/remote/RemoteStorage.hpp
src/util/DirEntry.hpp
src/util/MemoryMap.hpp
src/util/TextTable.hpp
src/util/ThreadPool.hpp
src/util/TimePoint.hpp
src/util/Tokenizer.hpp
src/util/error.hpp
src/util/file.hpp
src/util/filesystem.hpp
src/util/logging.hpp
src/util/path.hpp
src/util/string.cpp
src/util/string.hpp
src/util/zstd.hpp

index 0370d09f5603c6dfb3d8fb2ac9d82c083733acd4..dffdffd9cdafb3cccfe932bc7b877e9865e6282b 100644 (file)
@@ -18,8 +18,6 @@
 
 #pragma once
 
-#include <util/NonCopyable.hpp>
-
 #include <deque>
 #include <optional>
 #include <string>
index 55c44b292d3355adae9e0614b083e6dfdad2a324..a244fd58765b18a9e63aa72f8ba95277929b705d 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2019-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -37,8 +37,6 @@
 #include <util/string.hpp>
 #include <util/wincompat.hpp>
 
-#include <sys/types.h>
-
 #ifdef HAVE_PWD_H
 #  include <pwd.h>
 #endif
index 17015526e43133bb08a55d36ba9e89fdcfddc6ed..b3c28a41cdb06521da764ea5ba3411f72c10e57d 100644 (file)
 
 #include <core/Sloppiness.hpp>
 #include <util/NonCopyable.hpp>
-#include <util/filesystem.hpp>
 #include <util/string.hpp>
 
 #include <sys/types.h>
 
 #include <cstdint>
+#include <filesystem>
 #include <functional>
-#include <limits>
 #include <optional>
 #include <string>
 #include <unordered_map>
index e06da471af8184d7563e6f4ba0ed186d7c4c0346..bfc312216e329b05500ce58e4eb73f09ab0e6cca 100644 (file)
@@ -21,7 +21,9 @@
 #include "Args.hpp"
 #include "ArgsInfo.hpp"
 #include "Config.hpp"
-#include "MiniTrace.hpp"
+#ifdef MTR_ENABLED
+#  include "MiniTrace.hpp"
+#endif
 
 #include <util/FileStream.hpp>
 #include <util/NonCopyable.hpp>
 #include <Hash.hpp>
 #include <core/Manifest.hpp>
 #include <storage/Storage.hpp>
+#include <util/Bytes.hpp>
 #include <util/TimePoint.hpp>
 
+#include <sys/types.h>
+
 #include <ctime>
+#include <filesystem>
 #include <optional>
 #include <string>
-#include <string_view>
 #include <unordered_map>
 #include <vector>
 
index a58bc37f44756d8808816ca1612792c0455e80e2..85393cd0aea4377c6dc8a0ed432b5153456e9c36 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -19,7 +19,6 @@
 #pragma once
 
 class Context;
-class Hash;
 
 #include <optional>
 #include <string>
index 5fa9f034ff3c7c2e108b9649788a67b07d219f05..7fe8386e7a8fca426bd94292aceef2075ca2458b 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -25,6 +25,7 @@
 #include <array>
 #include <cstdint>
 #include <cstdio>
+#include <string>
 #include <string_view>
 
 // This class represents a hash state.
index 0e10b83ecfb24e08aea21be5fc343a8a1d9b2526..48bedcbc5a1c9c07a7531530e36a57b4dab3a051 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -25,6 +25,8 @@
 #include <util/MemoryMap.hpp>
 #include <util/TimePoint.hpp>
 
+#include <sys/types.h>
+
 #include <cstdint>
 #include <functional>
 #include <optional>
@@ -32,7 +34,6 @@
 #include <utility>
 
 class Config;
-class Context;
 
 class InodeCache
 {
index 8fe54f83a161b0ee90f76cf91b0611b6eeb22bc2..77c4653c281503f7a0081a0fd66b08594fb4386b 100644 (file)
 
 #pragma once
 
-#include <util/TimePoint.hpp>
-
-#include <cstdint>
 #include <filesystem>
-#include <functional>
-#include <memory>
-#include <optional>
 #include <string>
 #include <string_view>
-#include <utility>
-#include <vector>
 
-class Config;
 class Context;
 
 namespace Util {
index 771031a0ffd1aa13fdd39db1fd4153712e8e4acc..d5ed96070eb293401f2d6d0cdd9bfd3463fdf9a3 100644 (file)
@@ -1,5 +1,5 @@
 // Copyright (C) 2002-2007 Andrew Tridgell
-// Copyright (C) 2009-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2009-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -25,7 +25,6 @@
 #include <filesystem>
 #include <functional>
 #include <string>
-#include <string_view>
 #include <vector>
 
 class Context;
index 1e519d6b2d11dc628de732178ce97633efc112c6..0009ecc7fa465ecf8e6f80265a6cfcba9f37f63a 100644 (file)
 #include <core/exceptions.hpp>
 #include <core/types.hpp>
 #include <util/TimePoint.hpp>
+#include <util/XXH3_128.hpp>
 #include <util/expected.hpp>
 #include <util/file.hpp>
+#include <util/filesystem.hpp>
 #include <util/fmtmacros.hpp>
 #include <util/logging.hpp>
 #include <util/zstd.hpp>
index 74b109bbe0264b8a3ae05bc498445ca3f24d4501..ce0ebf7246b9fc17f0af6567dd7721f004593023 100644 (file)
@@ -21,7 +21,6 @@
 #include <core/Serializer.hpp>
 #include <core/types.hpp>
 #include <util/Bytes.hpp>
-#include <util/XXH3_128.hpp>
 
 #include <third_party/nonstd/span.hpp>
 
index 0c341a0942f9297a9e5fac8c1232c0b24bf9206e..7b047f49b96df0361a2c6480a5c1295500bd4757 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -22,9 +22,7 @@
 
 #include <atomic>
 #include <cstdint>
-#include <mutex>
 #include <optional>
-#include <string>
 
 namespace core {
 
index 9ffa65ea3c842da9a1c8606997625283a14b944b..18f7ef40399d888cee3594ead5b9d2db747142e7 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2009-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2009-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 
 #include <Hash.hpp>
 #include <core/Serializer.hpp>
+#include <util/Bytes.hpp>
 #include <util/TimePoint.hpp>
 
 #include <third_party/nonstd/span.hpp>
 
 #include <cstdint>
+#include <cstdio>
 #include <functional>
 #include <optional>
 #include <string>
index 3c732f94e1394169d410ef653b00567233c1e1ab..6ec343d5a44fce34bafbf3853edd7ca76b31229c 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2019-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -19,7 +19,7 @@
 #pragma once
 
 #include <core/Serializer.hpp>
-#include <util/types.hpp>
+#include <util/Bytes.hpp>
 
 #include <third_party/nonstd/span.hpp>
 
index 33e91a3f2dc4900bbe835de7d17f3d314ef8ebcb..325ec4f0c4d547b5aa9a2b6e3587d3752009ab66 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -20,6 +20,9 @@
 
 #include <core/Result.hpp>
 
+#include <third_party/nonstd/span.hpp>
+
+#include <cstdint>
 #include <functional>
 #include <optional>
 #include <string>
index 9fdd9d32f7941170856115f14dc16fe8c2bccf21..374240d1702f992fc4d4f26b9f0b09d9ff76ad64 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2020-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -20,6 +20,8 @@
 
 #include <core/Result.hpp>
 
+#include <third_party/nonstd/span.hpp>
+
 #include <cstdint>
 #include <cstdio>
 
index 5632a19b5d52989d62c8a521569fe42e966a7296..74e5e102f6c7c3853453db80dae2ca913731e66a 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 #include <core/Result.hpp>
 #include <core/exceptions.hpp>
 
+#include <third_party/nonstd/span.hpp>
+
+#include <cstdint>
 #include <optional>
+#include <string>
 
 class Context;
 
index ab0a1f18447526623d9d7498e4ddc48b97469cbf..54f7641fac74341c3c947fc6615981039eb183e4 100644 (file)
 
 #pragma once
 
+#include <core/Statistic.hpp>
 #include <core/StatisticsCounters.hpp>
 #include <util/TimePoint.hpp>
 
 #include <cstdint>
-#include <ctime>
 #include <string>
 #include <unordered_map>
 #include <utility>
index df5668e31cdceefe903b54070ee8280d9bed2d23..653b19181d372f10252e5afdbc10e124f5c0b218 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
index 793662f804b19df7a43eb491b8739de65efb4c24..d709065c235e26e97c2a6e7cbb8b222259e3198d 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 #include <core/types.hpp>
 #include <storage/local/LocalStorage.hpp>
 #include <storage/remote/RemoteStorage.hpp>
-#include <storage/types.hpp>
 #include <util/Bytes.hpp>
 
 #include <third_party/nonstd/span.hpp>
 
+#include <cstdint>
 #include <functional>
 #include <memory>
-#include <optional>
 #include <string>
+#include <string_view>
 #include <vector>
 
 namespace storage {
index 26dc828b7fbdcacaf72a8517982c6975df5d131b..64036864c5475ef96311e92471bd10a269f9731b 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 
 #include <Hash.hpp>
 #include <core/Result.hpp>
+#include <core/Statistic.hpp>
 #include <core/StatisticsCounters.hpp>
 #include <core/types.hpp>
 #include <storage/local/StatsFile.hpp>
 #include <storage/local/util.hpp>
-#include <storage/types.hpp>
 #include <util/Bytes.hpp>
+#include <util/DirEntry.hpp>
 #include <util/LockFile.hpp>
+#include <util/LongLivedLockFileManager.hpp>
 #include <util/TimePoint.hpp>
 
 #include <third_party/nonstd/span.hpp>
@@ -34,7 +36,9 @@
 #include <cstdint>
 #include <filesystem>
 #include <optional>
+#include <string>
 #include <string_view>
+#include <utility>
 #include <vector>
 
 class Config;
index c1d72961a5eaa040720153e6b267d0ff927e925d..6dee11dd08ea08f17b7bf6f65b35e41f9d68101e 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 
 #include <storage/remote/RemoteStorage.hpp>
 
+#include <third_party/url.hpp>
+
+#include <memory>
+#include <vector>
+
 namespace storage::remote {
 
 class FileStorage : public RemoteStorage
index 9b1aaf4b5981b01c57ef05388542b7d20b1db2c0..0e721ec4114d60b1bbb6f3397e92c8f14cd507ba 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2022 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 
 #include <storage/remote/RemoteStorage.hpp>
 
+#include <third_party/url.hpp>
+
+#include <memory>
+#include <vector>
+
 namespace storage::remote {
 
 class HttpStorage : public RemoteStorage
index 11e21a36648a60a718420a12df63ef15600256a3..6989782e9aa40af2164fcbda330a5f1a61dac443 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 
 #include <storage/remote/RemoteStorage.hpp>
 
+#include <third_party/url.hpp>
+
+#include <memory>
+#include <vector>
+
 namespace storage::remote {
 
 class RedisStorage : public RemoteStorage
index 9c14d6313a300b416e9bd4764425fd8dc5283d12..5a393ff3f710031647a667fb9a3cb7a70ab7a373 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -19,7 +19,6 @@
 #pragma once
 
 #include <Hash.hpp>
-#include <storage/types.hpp>
 #include <util/Bytes.hpp>
 
 #include <third_party/nonstd/span.hpp>
@@ -29,6 +28,7 @@
 #include <chrono>
 #include <memory>
 #include <optional>
+#include <stdexcept>
 #include <string>
 #include <vector>
 
index bd16e45c74669004b15f15c377b50533cf1a6539..138263b4090e31d178d2ebfbcdc6d981bfcf7bff 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2019-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 #include <util/wincompat.hpp>
 
 #include <sys/stat.h>
-#include <sys/types.h>
 
 #include <cstdint>
-#include <ctime>
 #include <filesystem>
 
 namespace util {
index 91025b14cc6815b91b8d312e34b28c5143687385..538b2f12327a86040c59d401bcb6865faf157e34 100644 (file)
@@ -22,6 +22,7 @@
 
 #include <third_party/tl/expected.hpp>
 
+#include <cstddef>
 #include <string>
 
 namespace util {
index d435603f04fe96956ba18a910de1c348c9531181..5602d6a6825bab826ff20ac6aa64aeffcea71f5a 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -18,6 +18,7 @@
 
 #pragma once
 
+#include <cstddef>
 #include <cstdint>
 #include <string>
 #include <string_view>
index 32b85e8772ecf809c9fbf87644421f125af590ea..3e82ab495dd26f14c922d1e29baa2c31ae884207 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2019-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2019-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 #pragma once
 
 #include <condition_variable>
+#include <cstddef>
 #include <functional>
 #include <limits>
 #include <mutex>
 #include <queue>
 #include <thread>
+#include <vector>
 
 namespace util {
 
index 98a3cc80099cd715807ddfe1fe1535836863c4aa..530bd124bcf18f1e9041a476bda0daa30fa72e4b 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
index 247babaa4e7835a4df6822c1caaf3f2d2c4581d4..ba69e18fe2c812fd7814cd12132505b15793cc18 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -20,6 +20,7 @@
 
 #include <util/assertions.hpp>
 
+#include <cstddef>
 #include <string_view>
 
 namespace util {
index de77b77c78536cb4b6c137fbf7e44f1fa5521d5f..a4713842b7b07f5f8967c78382f4467036ae81df 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2023 Joel Rosdahl and other contributors
+// Copyright (C) 2023-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
 
 #pragma once
 
-#include <cstdint>
-#include <string>
+#ifdef _WIN32
 
-namespace util {
+#  include <cstdint>
+#  include <string>
 
-#ifdef _WIN32
+namespace util {
 
 // Return the error message corresponding to `error_code`.
 std::string win32_error_message(uint32_t error_code);
 
-#endif
-
 } // namespace util
+
+#endif
index a7942d67edb6dfcb7b8b4d75f14eaa4701f6a619..463813c5ccdc2ed282fc068ad254e444074cfff9 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2021-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2021-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -28,7 +28,6 @@
 
 #include <cstddef>
 #include <cstdint>
-#include <ctime>
 #include <filesystem>
 #include <functional>
 #include <optional>
index f137c4a6c06477e2c4d48226b99c80cc51896822..6cd0476db6bd0eaaf7368f91ec90a55e04f02655 100644 (file)
@@ -20,6 +20,7 @@
 
 #include <third_party/tl/expected.hpp>
 
+#include <cstdint>
 #include <filesystem>
 #include <system_error>
 
index 9ecf5b66fc7692ff49a63aa8362c7e6c55df245c..2e4300fa16da01b6d7f1b8ef8f2d6ae7553b9868 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2020-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2020-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -20,7 +20,6 @@
 
 #include <third_party/fmt/core.h>
 #include <third_party/fmt/format.h>
-#include <third_party/fmt/std.h>
 
 #include <string>
 #include <string_view>
@@ -47,8 +46,6 @@
     }                                                                          \
   } while (false)
 
-class Config;
-
 namespace util::logging {
 
 // Initialize global logging state. Must be called once before using the other
index 4e9484339f7c572630d4a885869f775620e13b49..31dbcbc59d234263f42c1d5fc1014a38971a0650 100644 (file)
 
 #pragma once
 
-#include <util/string.hpp>
-
 #include <filesystem>
 #include <string>
 #include <string_view>
-#include <vector>
+#ifdef _WIN32
+#  include <util/string.hpp>
+#endif
 
 namespace util {
 
index 24c14b6b234e4b32459af7463afa059038b46240..af419cf473e7c0b4db29a5d4b9890e74109c3638 100644 (file)
@@ -23,7 +23,6 @@
 
 #include <algorithm>
 #include <cctype>
-#include <iostream>
 
 namespace {
 
index 07f111f00ba737aac6b758b7b7822cb6691886ad..c61514d936105cde8fff881d061187714d62edf2 100644 (file)
@@ -18,7 +18,6 @@
 
 #pragma once
 
-#include <util/Bytes.hpp>
 #include <util/Tokenizer.hpp>
 #include <util/conversion.hpp>
 
index 9640b33b8ad725e5088c3f90ec2801158271d4ec..5c47a530745ea6314380cee7a56b38dd2d152837 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2022-2023 Joel Rosdahl and other contributors
+// Copyright (C) 2022-2024 Joel Rosdahl and other contributors
 //
 // See doc/AUTHORS.adoc for a complete list of contributors.
 //
@@ -23,6 +23,7 @@
 #include <third_party/nonstd/span.hpp>
 #include <third_party/tl/expected.hpp>
 
+#include <cstddef>
 #include <cstdint>
 #include <string>
 #include <tuple>