aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/rust-session-manager.h
diff options
context:
space:
mode:
authorArthur Cohen <arthur.cohen@embecosm.com>2023-06-26 14:47:06 +0200
committerCohenArthur <arthur.cohen@embecosm.com>2023-07-10 15:54:56 +0000
commit3016c44e535fe134d88c03ec3d61e3066e43180c (patch)
treeede922bdb7f1124def97b0d8788fafa02c85d98d /gcc/rust/rust-session-manager.h
parent1fe255e4928dd3a6d1ab574f92d472b1eea894c2 (diff)
downloadgcc-3016c44e535fe134d88c03ec3d61e3066e43180c.zip
gcc-3016c44e535fe134d88c03ec3d61e3066e43180c.tar.gz
gcc-3016c44e535fe134d88c03ec3d61e3066e43180c.tar.bz2
gccrs: Remove Rust::Optional in favor of tl::optional
gcc/rust/ChangeLog: * Make-lang.in: Remove rust-optional-test.cc's object file * ast/rust-macro.h: Remove use of Rust::Optional * backend/rust-compile-base.cc (HIRCompileBase::resolve_method_address): Likewise. * checks/errors/privacy/rust-privacy-reporter.cc (PrivacyReporter::check_for_privacy_violation): Likewise. (PrivacyReporter::visit): Likewise. * checks/errors/privacy/rust-privacy-reporter.h: Likewise. * checks/errors/rust-feature-gate.cc (FeatureGate::check): Likewise. * checks/errors/rust-feature.cc (Feature::create): Likewise. (Feature::as_name): Likewise. * checks/errors/rust-feature.h: Likewise. * expand/rust-macro-builtins.cc: Likewise. * lex/rust-lex.cc (Lexer::Lexer): Likewise. (Lexer::skip_token): Likewise. (Lexer::dump_and_skip): Likewise. * lex/rust-lex.h: Likewise. * resolve/rust-ast-resolve-path.cc (ResolvePath::resolve_path): Likewise. * resolve/rust-ast-resolve-type.cc (ResolveRelativeTypePath::go): Likewise. * rust-lang.cc (run_rust_tests): Likewise. * rust-session-manager.cc (Session::compile_crate): Likewise. (TargetOptions::dump_target_options): Likewise. * rust-session-manager.h (struct TargetOptions): Likewise. * util/rust-hir-map.cc (Mappings::lookup_module_children): Likewise. (Mappings::lookup_module_chidren_items): Likewise. (Mappings::lookup_module_child): Likewise. (Mappings::lookup_parent_module): Likewise. * util/rust-hir-map.h (RUST_HIR_MAP_H): Likewise. * util/rust-optional-test.cc: Removed. * util/rust-optional.h: Removed.
Diffstat (limited to 'gcc/rust/rust-session-manager.h')
-rw-r--r--gcc/rust/rust-session-manager.h47
1 files changed, 24 insertions, 23 deletions
diff --git a/gcc/rust/rust-session-manager.h b/gcc/rust/rust-session-manager.h
index fd62c42..85f003a 100644
--- a/gcc/rust/rust-session-manager.h
+++ b/gcc/rust/rust-session-manager.h
@@ -30,7 +30,7 @@
#include "coretypes.h"
#include "options.h"
-#include "rust-optional.h"
+#include "optional.h"
namespace Rust {
// parser forward decl
@@ -51,7 +51,7 @@ struct TargetOptions
{
/* TODO: maybe make private and access through helpers to allow changes to
* impl */
- std::unordered_map<std::string, std::unordered_set<Optional<std::string>>>
+ std::unordered_map<std::string, std::unordered_set<tl::optional<std::string>>>
features;
public:
@@ -60,8 +60,7 @@ public:
{
auto it = features.find (key);
return it != features.end ()
- && it->second.find (Optional<std::string>::none ())
- != it->second.end ();
+ && it->second.find (tl::nullopt) != it->second.end ();
}
// Returns whether a key exists with the given value in the feature set.
@@ -71,7 +70,7 @@ public:
if (it != features.end ())
{
auto set = it->second;
- auto it2 = set.find (Optional<std::string>::some (value));
+ auto it2 = set.find (value);
if (it2 != set.end ())
return true;
}
@@ -86,8 +85,8 @@ public:
if (it != features.end ())
{
auto set = it->second;
- if (set.size () == 1 && set.begin ()->is_some ())
- return set.begin ()->get ();
+ if (set.size () == 1 && set.begin ()->has_value ())
+ return set.begin ()->value ();
}
return "";
}
@@ -103,8 +102,8 @@ public:
return {};
for (auto &val : it->second)
- if (val.is_some ())
- ret.insert (val.get ());
+ if (val.has_value ())
+ ret.insert (val.value ());
return ret;
}
@@ -117,13 +116,14 @@ public:
auto it = features.find (key);
if (it == features.end ())
- it = features
- .insert (
- std::make_pair (std::move (key),
- std::unordered_set<Optional<std::string>> ()))
- .first;
-
- return it->second.insert (Optional<std::string>::none ()).second;
+ it
+ = features
+ .insert (
+ std::make_pair (std::move (key),
+ std::unordered_set<tl::optional<std::string>> ()))
+ .first;
+
+ return it->second.insert (tl::nullopt).second;
}
// Inserts a key-value pair into the feature set.
@@ -132,13 +132,14 @@ public:
auto it = features.find (key);
if (it == features.end ())
- it = features
- .insert (
- std::make_pair (std::move (key),
- std::unordered_set<Optional<std::string>> ()))
- .first;
-
- it->second.insert (Optional<std::string>::some (std::move (value)));
+ it
+ = features
+ .insert (
+ std::make_pair (std::move (key),
+ std::unordered_set<tl::optional<std::string>> ()))
+ .first;
+
+ it->second.insert (std::move (value));
}
// Dump all target options to stderr.