aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/hir/rust-ast-lower-pattern.cc
diff options
context:
space:
mode:
authorPhilip Herron <philip.herron@embecosm.com>2022-10-17 17:27:01 +0100
committerPhilip Herron <philip.herron@embecosm.com>2022-10-19 19:32:47 +0100
commit8e2d13922fb4af8d00bdabd7af964e4f11b84259 (patch)
treee9c94cd9d0f8105b8d719e172f4a24c5c1cdca2a /gcc/rust/hir/rust-ast-lower-pattern.cc
parent5f25f457eca1e04e577aae8e60fe640bb32d36fc (diff)
downloadgcc-8e2d13922fb4af8d00bdabd7af964e4f11b84259.zip
gcc-8e2d13922fb4af8d00bdabd7af964e4f11b84259.tar.gz
gcc-8e2d13922fb4af8d00bdabd7af964e4f11b84259.tar.bz2
Formatting cleanup in HIR lowering pattern
Move implementation into cc file from the header and remove unnessecary new lines in the expr lowering header.
Diffstat (limited to 'gcc/rust/hir/rust-ast-lower-pattern.cc')
-rw-r--r--gcc/rust/hir/rust-ast-lower-pattern.cc18
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/rust/hir/rust-ast-lower-pattern.cc b/gcc/rust/hir/rust-ast-lower-pattern.cc
index 2421ca8..2c9a0dc 100644
--- a/gcc/rust/hir/rust-ast-lower-pattern.cc
+++ b/gcc/rust/hir/rust-ast-lower-pattern.cc
@@ -22,6 +22,24 @@
namespace Rust {
namespace HIR {
+ASTLoweringPattern::ASTLoweringPattern () : translated (nullptr) {}
+
+HIR::Pattern *
+ASTLoweringPattern::translate (AST::Pattern *pattern)
+{
+ ASTLoweringPattern resolver;
+ pattern->accept_vis (resolver);
+
+ rust_assert (resolver.translated != nullptr);
+
+ resolver.mappings->insert_hir_pattern (resolver.translated);
+ resolver.mappings->insert_location (
+ resolver.translated->get_pattern_mappings ().get_hirid (),
+ pattern->get_locus ());
+
+ return resolver.translated;
+}
+
void
ASTLoweringPattern::visit (AST::IdentifierPattern &pattern)
{