summaryrefslogtreecommitdiff
path: root/src/dump_as_rust.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/dump_as_rust.cpp')
-rw-r--r--src/dump_as_rust.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/dump_as_rust.cpp b/src/dump_as_rust.cpp
index fe432268..76bb99b4 100644
--- a/src/dump_as_rust.cpp
+++ b/src/dump_as_rust.cpp
@@ -343,6 +343,8 @@ public:
case AST::ExprNode_BinOp::MULTIPLY: m_os << "*"; break;
case AST::ExprNode_BinOp::DIVIDE: m_os << "/"; break;
case AST::ExprNode_BinOp::MODULO: m_os << "%"; break;
+ case AST::ExprNode_BinOp::ADD: m_os << "+"; break;
+ case AST::ExprNode_BinOp::SUB: m_os << "-"; break;
}
m_os << " ";
if( IS(*n.m_right, AST::ExprNode_BinOp) )
@@ -565,6 +567,10 @@ void RustPrinter::print_pattern(const AST::Pattern& p)
case AST::Pattern::ANY:
m_os << "_";
break;
+ case AST::Pattern::REF:
+ m_os << "& ";
+ print_pattern(p.sub_patterns()[0]);
+ break;
case AST::Pattern::VALUE:
m_os << p.node();
break;