diff options
Diffstat (limited to 'src/dump_as_rust.cpp')
-rw-r--r-- | src/dump_as_rust.cpp | 18 |
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 << "("; |