summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2024-07-04 11:21:11 +0200
committerPaul Cristian Sarbu <paul.cristian.sarbu@huawei.com>2024-07-04 16:05:08 +0200
commit74f53b444853850144c3e63593f83c424e84a768 (patch)
tree6bd2ca1c22f368c1f7c1b121ce205446a136fa45 /src
parentce0f5420e60c4807cca3f57131ad24df8a6b9b4b (diff)
downloadjustbuild-74f53b444853850144c3e63593f83c424e84a768.tar.gz
Mark more constructors 'explicit'
Since c++17 the 'explicit' keyword has use also for constructors with more than one argument and it is recommended to use it by default whereever implicit conversions are not expected bahaviour.
Diffstat (limited to 'src')
-rw-r--r--src/buildtool/build_engine/analysed_target/analysed_target.hpp16
-rw-r--r--src/buildtool/build_engine/analysed_target/target_graph_information.hpp2
-rw-r--r--src/buildtool/execution_api/common/blob_tree.hpp2
-rw-r--r--src/buildtool/execution_api/local/local_action.hpp15
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_ac_client.hpp2
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_action.hpp15
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp2
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_execution_client.hpp3
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_network.hpp8
-rw-r--r--src/buildtool/execution_api/remote/bazel/bazel_response.hpp6
-rw-r--r--src/buildtool/execution_api/remote/bazel/bytestream_client.hpp2
-rw-r--r--src/buildtool/execution_engine/traverser/traverser.hpp8
-rw-r--r--src/buildtool/file_system/git_tree.hpp8
13 files changed, 46 insertions, 43 deletions
diff --git a/src/buildtool/build_engine/analysed_target/analysed_target.hpp b/src/buildtool/build_engine/analysed_target/analysed_target.hpp
index c5d3c9ba..889a6e89 100644
--- a/src/buildtool/build_engine/analysed_target/analysed_target.hpp
+++ b/src/buildtool/build_engine/analysed_target/analysed_target.hpp
@@ -32,14 +32,14 @@
class AnalysedTarget {
public:
- AnalysedTarget(TargetResult result,
- std::vector<ActionDescription::Ptr> actions,
- std::vector<std::string> blobs,
- std::vector<Tree::Ptr> trees,
- std::unordered_set<std::string> vars,
- std::set<std::string> tainted,
- std::set<std::string> implied_export_targets,
- TargetGraphInformation graph_information)
+ explicit AnalysedTarget(TargetResult result,
+ std::vector<ActionDescription::Ptr> actions,
+ std::vector<std::string> blobs,
+ std::vector<Tree::Ptr> trees,
+ std::unordered_set<std::string> vars,
+ std::set<std::string> tainted,
+ std::set<std::string> implied_export_targets,
+ TargetGraphInformation graph_information)
: result_{std::move(result)},
actions_{std::move(actions)},
blobs_{std::move(blobs)},
diff --git a/src/buildtool/build_engine/analysed_target/target_graph_information.hpp b/src/buildtool/build_engine/analysed_target/target_graph_information.hpp
index cabd42c8..672aeddc 100644
--- a/src/buildtool/build_engine/analysed_target/target_graph_information.hpp
+++ b/src/buildtool/build_engine/analysed_target/target_graph_information.hpp
@@ -25,7 +25,7 @@
class TargetGraphInformation {
public:
- TargetGraphInformation(
+ explicit TargetGraphInformation(
BuildMaps::Target::ConfiguredTargetPtr node,
std::vector<BuildMaps::Target::ConfiguredTargetPtr> direct,
std::vector<BuildMaps::Target::ConfiguredTargetPtr> implicit,
diff --git a/src/buildtool/execution_api/common/blob_tree.hpp b/src/buildtool/execution_api/common/blob_tree.hpp
index ad462aab..25d0f560 100644
--- a/src/buildtool/execution_api/common/blob_tree.hpp
+++ b/src/buildtool/execution_api/common/blob_tree.hpp
@@ -33,7 +33,7 @@ using BlobTreePtr = gsl::not_null<std::shared_ptr<BlobTree>>;
/// upload.
class BlobTree {
public:
- BlobTree(ArtifactBlob blob, std::vector<BlobTreePtr> nodes)
+ explicit BlobTree(ArtifactBlob blob, std::vector<BlobTreePtr> nodes)
: blob_{std::move(blob)}, nodes_{std::move(nodes)} {}
[[nodiscard]] auto Blob() const noexcept -> ArtifactBlob { return blob_; }
diff --git a/src/buildtool/execution_api/local/local_action.hpp b/src/buildtool/execution_api/local/local_action.hpp
index 0fce3c35..b88b3a97 100644
--- a/src/buildtool/execution_api/local/local_action.hpp
+++ b/src/buildtool/execution_api/local/local_action.hpp
@@ -67,13 +67,14 @@ class LocalAction final : public IExecutionAction {
std::chrono::milliseconds timeout_{kDefaultTimeout};
CacheFlag cache_flag_{CacheFlag::CacheOutput};
- LocalAction(gsl::not_null<Storage const*> const& storage,
- ArtifactDigest root_digest,
- std::vector<std::string> command,
- std::vector<std::string> output_files,
- std::vector<std::string> output_dirs,
- std::map<std::string, std::string> env_vars,
- std::map<std::string, std::string> const& properties) noexcept
+ explicit LocalAction(
+ gsl::not_null<Storage const*> const& storage,
+ ArtifactDigest root_digest,
+ std::vector<std::string> command,
+ std::vector<std::string> output_files,
+ std::vector<std::string> output_dirs,
+ std::map<std::string, std::string> env_vars,
+ std::map<std::string, std::string> const& properties) noexcept
: storage_{storage},
root_digest_{std::move(root_digest)},
cmdline_{std::move(command)},
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_ac_client.hpp b/src/buildtool/execution_api/remote/bazel/bazel_ac_client.hpp
index 864d1254..8ec8b85f 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_ac_client.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_ac_client.hpp
@@ -31,7 +31,7 @@
/// https://github.com/bazelbuild/remote-apis/blob/e1fe21be4c9ae76269a5a63215bb3c72ed9ab3f0/build/bazel/remote/execution/v2/remote_execution.proto#L144
class BazelAcClient {
public:
- BazelAcClient(std::string const& server, Port port) noexcept;
+ explicit BazelAcClient(std::string const& server, Port port) noexcept;
[[nodiscard]] auto GetActionResult(
std::string const& instance_name,
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_action.hpp b/src/buildtool/execution_api/remote/bazel/bazel_action.hpp
index 5abfe57b..58e5965f 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_action.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_action.hpp
@@ -50,13 +50,14 @@ class BazelAction final : public IExecutionAction {
CacheFlag cache_flag_{CacheFlag::CacheOutput};
std::chrono::milliseconds timeout_{kDefaultTimeout};
- BazelAction(std::shared_ptr<BazelNetwork> network,
- bazel_re::Digest root_digest,
- std::vector<std::string> command,
- std::vector<std::string> output_files,
- std::vector<std::string> output_dirs,
- std::map<std::string, std::string> const& env_vars,
- std::map<std::string, std::string> const& properties) noexcept;
+ explicit BazelAction(
+ std::shared_ptr<BazelNetwork> network,
+ bazel_re::Digest root_digest,
+ std::vector<std::string> command,
+ std::vector<std::string> output_files,
+ std::vector<std::string> output_dirs,
+ std::map<std::string, std::string> const& env_vars,
+ std::map<std::string, std::string> const& properties) noexcept;
[[nodiscard]] auto CreateBundlesForAction(BazelBlobContainer* blobs,
bazel_re::Digest const& exec_dir,
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp
index 391de317..69ee45d4 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_cas_client.hpp
@@ -37,7 +37,7 @@
/// https://github.com/bazelbuild/remote-apis/blob/e1fe21be4c9ae76269a5a63215bb3c72ed9ab3f0/build/bazel/remote/execution/v2/remote_execution.proto#L317
class BazelCasClient {
public:
- BazelCasClient(std::string const& server, Port port) noexcept;
+ explicit BazelCasClient(std::string const& server, Port port) noexcept;
/// \brief Find missing blobs
/// \param[in] instance_name Name of the CAS instance
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_execution_client.hpp b/src/buildtool/execution_api/remote/bazel/bazel_execution_client.hpp
index f2f25b71..cb933b99 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_execution_client.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_execution_client.hpp
@@ -54,7 +54,8 @@ class BazelExecutionClient {
}
};
- BazelExecutionClient(std::string const& server, Port port) noexcept;
+ explicit BazelExecutionClient(std::string const& server,
+ Port port) noexcept;
[[nodiscard]] auto Execute(std::string const& instance_name,
bazel_re::Digest const& action_digest,
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_network.hpp b/src/buildtool/execution_api/remote/bazel/bazel_network.hpp
index 853efa41..a55fa064 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_network.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_network.hpp
@@ -35,10 +35,10 @@
/// \brief Contains all network clients and is responsible for all network IO.
class BazelNetwork {
public:
- BazelNetwork(std::string instance_name,
- std::string const& host,
- Port port,
- ExecutionConfiguration const& exec_config) noexcept;
+ explicit BazelNetwork(std::string instance_name,
+ std::string const& host,
+ Port port,
+ ExecutionConfiguration const& exec_config) noexcept;
/// \brief Check if digest exists in CAS
/// \param[in] digest The digest to look up
diff --git a/src/buildtool/execution_api/remote/bazel/bazel_response.hpp b/src/buildtool/execution_api/remote/bazel/bazel_response.hpp
index 41957255..30a70d7f 100644
--- a/src/buildtool/execution_api/remote/bazel/bazel_response.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bazel_response.hpp
@@ -70,9 +70,9 @@ class BazelResponse final : public IExecutionResponse {
DirSymlinks dir_symlinks_{};
bool populated_{false};
- BazelResponse(std::string action_id,
- std::shared_ptr<BazelNetwork> network,
- BazelExecutionClient::ExecutionOutput output)
+ explicit BazelResponse(std::string action_id,
+ std::shared_ptr<BazelNetwork> network,
+ BazelExecutionClient::ExecutionOutput output)
: action_id_{std::move(action_id)},
network_{std::move(network)},
output_{std::move(output)} {}
diff --git a/src/buildtool/execution_api/remote/bazel/bytestream_client.hpp b/src/buildtool/execution_api/remote/bazel/bytestream_client.hpp
index a6516e47..908f6e2a 100644
--- a/src/buildtool/execution_api/remote/bazel/bytestream_client.hpp
+++ b/src/buildtool/execution_api/remote/bazel/bytestream_client.hpp
@@ -80,7 +80,7 @@ class ByteStreamClient {
}
};
- ByteStreamClient(std::string const& server, Port port) noexcept {
+ explicit ByteStreamClient(std::string const& server, Port port) noexcept {
stub_ = google::bytestream::ByteStream::NewStub(
CreateChannelWithCredentials(server, port));
}
diff --git a/src/buildtool/execution_engine/traverser/traverser.hpp b/src/buildtool/execution_engine/traverser/traverser.hpp
index 81f2e348..e99c2565 100644
--- a/src/buildtool/execution_engine/traverser/traverser.hpp
+++ b/src/buildtool/execution_engine/traverser/traverser.hpp
@@ -46,10 +46,10 @@ concept Runnable = requires(T const r,
template <Runnable Executor>
class Traverser {
public:
- Traverser(Executor const& r,
- DependencyGraph const& graph,
- std::size_t jobs,
- gsl::not_null<std::atomic<bool>*> const& fail_flag)
+ explicit Traverser(Executor const& r,
+ DependencyGraph const& graph,
+ std::size_t jobs,
+ gsl::not_null<std::atomic<bool>*> const& fail_flag)
: runner_{r}, graph_{graph}, failed_{fail_flag}, tasker_{jobs} {}
Traverser() = delete;
Traverser(Traverser const&) = delete;
diff --git a/src/buildtool/file_system/git_tree.hpp b/src/buildtool/file_system/git_tree.hpp
index c6a0833e..f928b7d7 100644
--- a/src/buildtool/file_system/git_tree.hpp
+++ b/src/buildtool/file_system/git_tree.hpp
@@ -99,10 +99,10 @@ class GitTree {
// If set, ignore all fast tree lookups and always traverse.
bool ignore_special_;
- GitTree(gsl::not_null<GitCASPtr> const& cas,
- entries_t&& entries,
- std::string raw_id,
- bool ignore_special = false) noexcept
+ explicit GitTree(gsl::not_null<GitCASPtr> const& cas,
+ entries_t&& entries,
+ std::string raw_id,
+ bool ignore_special = false) noexcept
: cas_{cas},
entries_{std::move(entries)},
raw_id_{std::move(raw_id)},