summaryrefslogtreecommitdiff
path: root/src/buildtool/file_system/file_root.hpp
diff options
context:
space:
mode:
authorOliver Reiche <oliver.reiche@gmail.com>2023-04-15 16:28:33 +0200
committerOliver Reiche <oliver.reiche@huawei.com>2023-04-26 18:29:44 +0200
commitd762bfa1953933dfac0a29a74523c25719396b8c (patch)
tree1002b0aecc1af698f0349a4efb4bfc169886c60a /src/buildtool/file_system/file_root.hpp
parent03e1019aca5d08e53bfeb455071d91561fc33039 (diff)
downloadjustbuild-d762bfa1953933dfac0a29a74523c25719396b8c.tar.gz
imports: Switch to Microsoft GSL implementation
... with two minor code base changes compared to previous use of gsl-lite: - dag.hpp: ActionNode::Ptr and ArtifactNode::Ptr are not wrapped in gsl::not_null<> anymore, due to lack of support for wrapping std::unique_ptr<>. More specifically, the move constructor is missing, rendering it impossible to use std::vector<>::emplace_back(). - utils/cpp/gsl.hpp: New header file added to implement the macros ExpectsAudit() and EnsureAudit(), asserts running only in debug builds, which were available in gsl-lite but are missing in MS GSL.
Diffstat (limited to 'src/buildtool/file_system/file_root.hpp')
-rw-r--r--src/buildtool/file_system/file_root.hpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/buildtool/file_system/file_root.hpp b/src/buildtool/file_system/file_root.hpp
index a1b21a81..e25a2455 100644
--- a/src/buildtool/file_system/file_root.hpp
+++ b/src/buildtool/file_system/file_root.hpp
@@ -24,7 +24,7 @@
#include <utility>
#include <variant>
-#include "gsl-lite/gsl-lite.hpp"
+#include "gsl/gsl"
#include "nlohmann/json.hpp"
#include "src/buildtool/common/artifact_description.hpp"
#include "src/buildtool/compatibility/compatibility.hpp"
@@ -169,8 +169,8 @@ class FileRoot {
explicit DirectoryEntries(pairs_t pairs) noexcept
: data_{std::move(pairs)} {}
- explicit DirectoryEntries(tree_t git_tree) noexcept
- : data_{std::move(git_tree)} {}
+ explicit DirectoryEntries(tree_t const& git_tree) noexcept
+ : data_{git_tree} {}
[[nodiscard]] auto ContainsFile(std::string const& name) const noexcept
-> bool {
@@ -272,9 +272,9 @@ class FileRoot {
FileRoot() noexcept = default;
explicit FileRoot(std::filesystem::path root) noexcept
: root_{std::move(root)} {}
- FileRoot(gsl::not_null<GitCASPtr> cas,
- gsl::not_null<GitTreePtr> tree) noexcept
- : root_{git_root_t{std::move(cas), std::move(tree)}} {}
+ FileRoot(gsl::not_null<GitCASPtr> const& cas,
+ gsl::not_null<GitTreePtr> const& tree) noexcept
+ : root_{git_root_t{cas, tree}} {}
[[nodiscard]] static auto FromGit(std::filesystem::path const& repo_path,
std::string const& git_tree_id) noexcept