Skip to content

Commit 507f152

Browse files
committed
add necessary spaces when an interpolated string expression is a table
1 parent ef12da0 commit 507f152

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

src/formatter.cpp

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -590,8 +590,14 @@ std::optional<std::string> AstFormatter::formatExpr(AstExpr* main_expr) {
590590
auto& string = string_list.data[0];
591591
insertEnd(result, string.begin(), string.end());
592592
for (size_t i = 0; i < expr_list_size; i++) {
593+
const auto& item = expr_list.data[i];
594+
const bool item_is_table = item->is<AstExprTable>();
593595
appendChar(result, '{');
594-
appendNode(expr_list.data[i], std::string("interp_string->expressions.data[").append(convertNumber(i)) += ']')
596+
if (item_is_table)
597+
appendChar(result, ' ');
598+
appendNode(item, std::string("interp_string->expressions.data[").append(convertNumber(i)) += ']')
599+
if (item_is_table)
600+
appendChar(result, ' ');
595601
appendChar(result, '}');
596602
auto& string = string_list.data[i + 1];
597603
insertEnd(result, string.begin(), string.end());

0 commit comments

Comments
 (0)