From 8c5be0dd1c460694a2c8ef78bdadc2c6aea01ad8 Mon Sep 17 00:00:00 2001 From: Pierre-Emmanuel Patry Date: Thu, 25 Apr 2024 16:15:42 +0200 Subject: gccrs: Change crate_num_to_nodeid return type Change the function's return type to an optional. gcc/rust/ChangeLog: * resolve/rust-ast-resolve-toplevel.h: Adapt the code to the new return type. * rust-session-manager.cc (Session::load_extern_crate): Likewise. * util/rust-hir-map.cc (Mappings::crate_num_to_nodeid): Change the return type. * util/rust-hir-map.h: Update the function's prototype. Signed-off-by: Pierre-Emmanuel Patry --- gcc/rust/util/rust-hir-map.cc | 9 ++++----- gcc/rust/util/rust-hir-map.h | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) (limited to 'gcc/rust/util') diff --git a/gcc/rust/util/rust-hir-map.cc b/gcc/rust/util/rust-hir-map.cc index 95d3b3a..76642a1 100644 --- a/gcc/rust/util/rust-hir-map.cc +++ b/gcc/rust/util/rust-hir-map.cc @@ -175,15 +175,14 @@ Mappings::lookup_crate_name (const std::string &crate_name) const return tl::nullopt; } -bool -Mappings::crate_num_to_nodeid (const CrateNum &crate_num, NodeId &node_id) const +tl::optional +Mappings::crate_num_to_nodeid (const CrateNum &crate_num) const { auto it = ast_crate_mappings.find (crate_num); if (it == ast_crate_mappings.end ()) - return false; + return tl::nullopt; - node_id = it->second->get_node_id (); - return true; + return it->second->get_node_id (); } bool diff --git a/gcc/rust/util/rust-hir-map.h b/gcc/rust/util/rust-hir-map.h index a68d81f..8181abe 100644 --- a/gcc/rust/util/rust-hir-map.h +++ b/gcc/rust/util/rust-hir-map.h @@ -85,7 +85,7 @@ public: std::string get_current_crate_name () const; tl::optional lookup_crate_name (const std::string &crate_name) const; - bool crate_num_to_nodeid (const CrateNum &crate_num, NodeId &node_id) const; + tl::optional crate_num_to_nodeid (const CrateNum &crate_num) const; bool node_is_crate (NodeId node_id) const; NodeId get_next_node_id (); -- cgit v1.1