Android-cuttlefish cvd tool
android_build.h
Go to the documentation of this file.
1//
2// Copyright (C) 2019 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8// http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15
16#pragma once
17
18#include <optional>
19#include <ostream>
20#include <string>
21#include <variant>
22#include <vector>
23
24namespace cuttlefish {
25
27 std::string id;
28 std::string branch;
29 std::string target;
30 std::string product;
31 std::optional<std::string> filepath;
32};
33
34std::ostream& operator<<(std::ostream&, const DeviceBuild&);
35
37 DirectoryBuild(std::vector<std::string> paths, std::string target,
38 std::optional<std::string> filepath);
39
40 std::vector<std::string> paths;
41 std::string target;
42 std::string id;
43 std::string product;
44 std::optional<std::string> filepath;
45};
46
47std::ostream& operator<<(std::ostream&, const DirectoryBuild&);
48
49using Build = std::variant<DeviceBuild, DirectoryBuild>;
50
51std::ostream& operator<<(std::ostream&, const Build&);
52
53} // namespace cuttlefish
Definition: alloc_utils.cpp:23
std::ostream & operator<<(std::ostream &out, Arch arch)
Definition: architecture.cpp:67
std::variant< DeviceBuild, DirectoryBuild > Build
Definition: android_build.h:49
Definition: android_build.h:26
std::optional< std::string > filepath
Definition: android_build.h:31
std::string target
Definition: android_build.h:29
std::string product
Definition: android_build.h:30
std::string id
Definition: android_build.h:27
std::string branch
Definition: android_build.h:28
Definition: android_build.h:36
std::string target
Definition: android_build.h:41
std::optional< std::string > filepath
Definition: android_build.h:44
DirectoryBuild(std::vector< std::string > paths, std::string target, std::optional< std::string > filepath)
Definition: android_build.cc:37
std::string product
Definition: android_build.h:43
std::string id
Definition: android_build.h:42
std::vector< std::string > paths
Definition: android_build.h:40