diff options
author | Maksim Denisov <denisov.maksim@huawei.com> | 2024-12-19 11:35:25 +0100 |
---|---|---|
committer | Maksim Denisov <denisov.maksim@huawei.com> | 2024-12-20 11:36:17 +0100 |
commit | 5e2fe74d3e5798ef73b3eef98d84577d881aad9a (patch) | |
tree | 76e0531c07d63cc0a1a55c70d524f6ae8e8bf522 /src/other_tools/utils/parse_computed_root.hpp | |
parent | 1e9080be33a18dd672d2cb035a18ba1d1aba0fb6 (diff) | |
download | justbuild-5e2fe74d3e5798ef73b3eef98d84577d881aad9a.tar.gz |
TreeStructure: Unify parsing of precomputed roots in just-mr
Diffstat (limited to 'src/other_tools/utils/parse_computed_root.hpp')
-rw-r--r-- | src/other_tools/utils/parse_computed_root.hpp | 48 |
1 files changed, 0 insertions, 48 deletions
diff --git a/src/other_tools/utils/parse_computed_root.hpp b/src/other_tools/utils/parse_computed_root.hpp deleted file mode 100644 index 2cc54c87..00000000 --- a/src/other_tools/utils/parse_computed_root.hpp +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright 2024 Huawei Cloud Computing Technology Co., Ltd. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -#ifndef INCLUDED_SRC_OTHER_TOOLS_UTILS_PARSE_COMPUTED_ROOT_HPP -#define INCLUDED_SRC_OTHER_TOOLS_UTILS_PARSE_COMPUTED_ROOT_HPP - -#include <optional> -#include <string> - -#include "gsl/gsl" -#include "src/buildtool/build_engine/expression/expression_ptr.hpp" -#include "src/buildtool/file_system/precomputed_root.hpp" -#include "src/utils/cpp/expected.hpp" - -class ComputedRootParser final { - public: - /// \brief Create a parser for computed roots - /// \param repository Repository to be parsed - /// \return Initialized parser on success, or std::nullopt if repository - /// isn't Map or type is not computed. - [[nodiscard]] static auto Create( - gsl::not_null<ExpressionPtr const*> const& repository) noexcept - -> std::optional<ComputedRootParser>; - - [[nodiscard]] auto GetTargetRepository() const - -> expected<std::string, std::string>; - - [[nodiscard]] auto GetResult() const -> expected<ComputedRoot, std::string>; - - private: - ExpressionPtr const& repository_; - explicit ComputedRootParser( - gsl::not_null<ExpressionPtr const*> const& repository) - : repository_{*repository} {} -}; - -#endif // INCLUDED_SRC_OTHER_TOOLS_UTILS_PARSE_COMPUTED_ROOT_HPP |