From 14bba54ddce2b9cbc98f1ecbc4d24cba908592ad Mon Sep 17 00:00:00 2001 From: yuyi Date: Mon, 11 May 2020 12:15:08 +0800 Subject: [PATCH] vrepl: fix array_init error * optimize print conditions --- cmd/tools/vrepl.v | 8 ++------ vlib/v/tests/repl/array_init.repl | 3 +++ 2 files changed, 5 insertions(+), 6 deletions(-) create mode 100644 vlib/v/tests/repl/array_init.repl diff --git a/cmd/tools/vrepl.v b/cmd/tools/vrepl.v index dfe968a9c3..a3bc234425 100644 --- a/cmd/tools/vrepl.v +++ b/cmd/tools/vrepl.v @@ -23,7 +23,6 @@ mut: fn (r mut Repl) checks() bool { mut in_string := false - mut is_cut := false was_indent := r.indent > 0 for i := 0; i < r.line.len; i++ { @@ -32,13 +31,11 @@ fn (r mut Repl) checks() bool { } if r.line[i] == `{` && !in_string { r.line = r.line[..i + 1] + '\n' + r.line[i + 1..] - is_cut = true i++ r.indent++ } if r.line[i] == `}` && !in_string { r.line = r.line[..i] + '\n' + r.line[i..] - is_cut = true i++ r.indent-- if r.indent == 0 { @@ -49,7 +46,7 @@ fn (r mut Repl) checks() bool { r.in_func = true } } - return r.in_func || (was_indent && r.indent <= 0) || r.indent > 0 || is_cut + return r.in_func || (was_indent && r.indent <= 0) || r.indent > 0 } fn (r &Repl) function_call(line string) bool { @@ -160,8 +157,7 @@ fn run_repl(workdir string, vrepl_prefix string) { mut temp_flag := false func_call := r.function_call(r.line) filter_line := r.line.replace(r.line.find_between('\'', '\''), '').replace(r.line.find_between('"', '"'), '') - if !(filter_line.contains(':') || filter_line.contains('=') || - filter_line.contains(',') || filter_line.contains('++') || + if !(filter_line.contains('=') || filter_line.contains('++') || filter_line.contains('--') || filter_line.contains('<<') || filter_line.contains('//') || filter_line.contains('/*') || filter_line.starts_with('import') || r.line == '') && !func_call { diff --git a/vlib/v/tests/repl/array_init.repl b/vlib/v/tests/repl/array_init.repl new file mode 100644 index 0000000000..86906791de --- /dev/null +++ b/vlib/v/tests/repl/array_init.repl @@ -0,0 +1,3 @@ +[]int{len:3} +===output=== +[0, 0, 0]