From fdf5f5003b614582c4b88082d7fc507895d15d27 Mon Sep 17 00:00:00 2001 From: zakuro Date: Thu, 14 Jan 2021 10:21:19 +0900 Subject: [PATCH] ast: add str for ArrayInit (#8022) --- vlib/v/ast/str.v | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/vlib/v/ast/str.v b/vlib/v/ast/str.v index 59a879c613..e032f51834 100644 --- a/vlib/v/ast/str.v +++ b/vlib/v/ast/str.v @@ -183,6 +183,23 @@ pub fn (lit &StringInterLiteral) get_fspec_braces(i int) (string, bool) { // string representation of expr pub fn (x Expr) str() string { match x { + ArrayInit { + mut fields := []string{} + if x.has_len { + fields << 'len: $x.len_expr.str()' + } + if x.has_cap { + fields << 'cap: $x.cap_expr.str()' + } + if x.has_default { + fields << 'init: $x.default_expr.str()' + } + if fields.len > 0 { + return '[]T{${fields.join(', ')}}' + } else { + return x.exprs.str() + } + } CTempVar { return x.orig.str() }