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.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/dump_as_rust.cpp b/src/dump_as_rust.cpp
index f76f5942..1d3fa300 100644
--- a/src/dump_as_rust.cpp
+++ b/src/dump_as_rust.cpp
@@ -362,6 +362,24 @@ public:
m_os << indent() << "}";
dec_indent();
}
+ virtual void visit(AST::ExprNode_Array& n) override {
+ m_expr_root = false;
+ m_os << "[";
+ if( n.m_size.get() )
+ {
+ AST::NodeVisitor::visit(n.m_values[0]);
+ m_os << "; ";
+ AST::NodeVisitor::visit(n.m_size);
+ }
+ else {
+ for( auto& item : n.m_values )
+ {
+ AST::NodeVisitor::visit(item);
+ m_os << ", ";
+ }
+ }
+ m_os << "]";
+ }
virtual void visit(AST::ExprNode_Tuple& n) override {
m_expr_root = false;
m_os << "(";