diff options
Diffstat (limited to 'tools/aapt2/ResourceTable.cpp')
-rw-r--r-- | tools/aapt2/ResourceTable.cpp | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/tools/aapt2/ResourceTable.cpp b/tools/aapt2/ResourceTable.cpp index 8ab1493c6ab3..ad014a23be87 100644 --- a/tools/aapt2/ResourceTable.cpp +++ b/tools/aapt2/ResourceTable.cpp @@ -18,6 +18,7 @@ #include <algorithm> #include <memory> +#include <optional> #include <tuple> #include "android-base/logging.h" @@ -68,7 +69,7 @@ struct NameEqualRange { template <typename T, typename U> bool less_than_struct_with_name_and_id(const T& lhs, - const std::pair<std::string_view, Maybe<U>>& rhs) { + const std::pair<std::string_view, std::optional<U>>& rhs) { if (lhs.id != rhs.second) { return lhs.id < rhs.second; } @@ -341,20 +342,20 @@ struct EntryViewComparer { void InsertEntryIntoTableView(ResourceTableView& table, const ResourceTablePackage* package, const ResourceTableType* type, const std::string& entry_name, - const Maybe<ResourceId>& id, const Visibility& visibility, - const Maybe<AllowNew>& allow_new, - const Maybe<OverlayableItem>& overlayable_item, - const Maybe<StagedId>& staged_id, + const std::optional<ResourceId>& id, const Visibility& visibility, + const std::optional<AllowNew>& allow_new, + const std::optional<OverlayableItem>& overlayable_item, + const std::optional<StagedId>& staged_id, const std::vector<std::unique_ptr<ResourceConfigValue>>& values) { SortedVectorInserter<ResourceTablePackageView, PackageViewComparer> package_inserter; SortedVectorInserter<ResourceTableTypeView, TypeViewComparer> type_inserter; SortedVectorInserter<ResourceTableEntryView, EntryViewComparer> entry_inserter; ResourceTablePackageView new_package{package->name, - id ? id.value().package_id() : Maybe<uint8_t>{}}; + id ? id.value().package_id() : std::optional<uint8_t>{}}; auto view_package = package_inserter.Insert(table.packages, std::move(new_package)); - ResourceTableTypeView new_type{type->type, id ? id.value().type_id() : Maybe<uint8_t>{}}; + ResourceTableTypeView new_type{type->type, id ? id.value().type_id() : std::optional<uint8_t>{}}; auto view_type = type_inserter.Insert(view_package->types, std::move(new_type)); if (visibility.level == Visibility::Level::kPublic) { @@ -363,7 +364,7 @@ void InsertEntryIntoTableView(ResourceTableView& table, const ResourceTablePacka } ResourceTableEntryView new_entry{.name = entry_name, - .id = id ? id.value().entry_id() : Maybe<uint16_t>{}, + .id = id ? id.value().entry_id() : std::optional<uint16_t>{}, .visibility = visibility, .allow_new = allow_new, .overlayable_item = overlayable_item, @@ -585,7 +586,8 @@ bool ResourceTable::AddResource(NewResource&& res, IDiagnostics* diag) { return true; } -Maybe<ResourceTable::SearchResult> ResourceTable::FindResource(const ResourceNameRef& name) const { +std::optional<ResourceTable::SearchResult> ResourceTable::FindResource( + const ResourceNameRef& name) const { ResourceTablePackage* package = FindPackage(name.package); if (package == nullptr) { return {}; @@ -603,8 +605,8 @@ Maybe<ResourceTable::SearchResult> ResourceTable::FindResource(const ResourceNam return SearchResult{package, type, entry}; } -Maybe<ResourceTable::SearchResult> ResourceTable::FindResource(const ResourceNameRef& name, - ResourceId id) const { +std::optional<ResourceTable::SearchResult> ResourceTable::FindResource(const ResourceNameRef& name, + ResourceId id) const { ResourceTablePackage* package = FindPackage(name.package); if (package == nullptr) { return {}; |