Skip to content

Commit e9f764d

Browse files
authored
cgen: uniform string output format
1 parent eb8973c commit e9f764d

11 files changed

+29
-29
lines changed

vlib/builtin/array.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -317,9 +317,9 @@ pub fn (a []string) str() string {
317317
sb.write('[')
318318
for i in 0..a.len {
319319
val := a[i]
320-
sb.write('"')
320+
sb.write("\'")
321321
sb.write(val)
322-
sb.write('"')
322+
sb.write("\'")
323323
if i < a.len - 1 {
324324
sb.write(', ')
325325
}

vlib/builtin/array_test.v

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ fn test_insert() {
168168
// }
169169
fn test_strings() {
170170
a := ['a', 'b', 'c']
171-
assert a.str() == '["a", "b", "c"]'
171+
assert a.str() == "['a', 'b', 'c']"
172172
}
173173

174174
/*

vlib/v/gen/cgen.v

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ pub fn cgen(files []ast.File, table &table.Table, pref &pref.Preferences) string
159159
//
160160
g.finish()
161161
//
162-
162+
163163
b := strings.new_builder(250000)
164164
b.writeln(g.hashes())
165165
b.writeln(g.comptime_defines.str())
@@ -3162,7 +3162,7 @@ fn (mut g Gen) gen_str_for_array(info table.Array, styp, str_fn_name string) {
31623162
} else {
31633163
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, ${field_styp}_str(it));')
31643164
}
3165-
g.auto_str_funcs.writeln('\t\tif (i != a.len-1) {')
3165+
g.auto_str_funcs.writeln('\t\tif (i < a.len-1) {')
31663166
g.auto_str_funcs.writeln('\t\t\tstrings__Builder_write(&sb, tos3(", "));')
31673167
g.auto_str_funcs.writeln('\t\t}')
31683168
g.auto_str_funcs.writeln('\t}')
@@ -3187,11 +3187,11 @@ fn (mut g Gen) gen_str_for_array_fixed(info table.ArrayFixed, styp, str_fn_name
31873187
} else if sym.kind in [.f32, .f64] {
31883188
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, _STR("%g", a[i]));')
31893189
} else if sym.kind == .string {
3190-
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, _STR("\\"%.*s\\"", a[i].len, a[i].str));')
3190+
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, _STR("\'%.*s\'", a[i].len, a[i].str));')
31913191
} else {
31923192
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, ${field_styp}_str(a[i]));')
31933193
}
3194-
g.auto_str_funcs.writeln('\t\tif (i != $info.size-1) {')
3194+
g.auto_str_funcs.writeln('\t\tif (i < ${info.size-1}) {')
31953195
g.auto_str_funcs.writeln('\t\t\tstrings__Builder_write(&sb, tos3(", "));')
31963196
g.auto_str_funcs.writeln('\t\t}')
31973197
g.auto_str_funcs.writeln('\t}')
@@ -3218,14 +3218,14 @@ fn (mut g Gen) gen_str_for_map(info table.Map, styp, str_fn_name string) {
32183218
g.auto_str_funcs.writeln('\tstrings__Builder_write(&sb, tos3("{"));')
32193219
g.auto_str_funcs.writeln('\tfor (unsigned int i = 0; i < m.key_values.size; i++) {')
32203220
g.auto_str_funcs.writeln('\t\tstring key = (*(string*)DenseArray_get(m.key_values, i));')
3221-
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, _STR("\\"%.*s\\"", key.len, key.str));')
3221+
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, _STR("\'%.*s\'", key.len, key.str));')
32223222
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, tos3(": "));')
32233223
g.auto_str_funcs.write('\t$val_styp it = (*($val_styp*)map_get3(')
32243224
g.auto_str_funcs.write('m, (*(string*)DenseArray_get(m.key_values, i))')
32253225
g.auto_str_funcs.write(', ')
32263226
g.auto_str_funcs.writeln(' &($val_styp[]) { $zero }));')
32273227
if val_sym.kind == .string {
3228-
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, _STR("\\"%.*s\\"", it.len, it.str));')
3228+
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, _STR("\'%.*s\'", it.len, it.str));')
32293229
} else if val_sym.kind == .struct_ && !val_sym.has_method('str') {
32303230
g.auto_str_funcs.writeln('\t\tstrings__Builder_write(&sb, ${val_styp}_str(it,0));')
32313231
} else if val_sym.kind in [.f32, .f64] {

vlib/v/tests/array_to_string_test.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
fn test_array_to_string_conversion() {
22
a := ['1', '2', '3', '4']
3-
assert a.str() == '["1", "2", "3", "4"]'
3+
assert a.str() == "['1', '2', '3', '4']"
44

55
b := [1, 2, 3, 4]
66
assert b.str() == '[1, 2, 3, 4]'
@@ -17,7 +17,7 @@ fn test_array_to_string_conversion() {
1717

1818
fn test_interpolation_array_to_string() {
1919
a := ['1', '2', '3']
20-
assert '$a' == '["1", "2", "3"]'
20+
assert '$a' == "['1', '2', '3']"
2121

2222
b := [1, 2, 3, 4]
2323
assert '$b' == '[1, 2, 3, 4]'

vlib/v/tests/fixed_array_init_test.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
fn test_fixed_array_init() {
22
a1 := ['1', '2', '3']!!
33
assert typeof(a1) == '[3]string'
4-
assert '$a1' == '["1", "2", "3"]'
4+
assert '$a1' == "['1', '2', '3']"
55

66
a2 := ['a', 'b']!!
77
assert typeof(a2) == '[2]string'
8-
assert '$a2' == '["a", "b"]'
8+
assert '$a2' == "['a', 'b']"
99

1010
c1 := [1, 2, 3]!!
1111
assert typeof(c1) == '[3]int'

vlib/v/tests/fixed_array_to_string_test.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ fn test_fixed_array_to_string() {
33
a1[0] = '1'
44
a1[1] = '2'
55
a1[2] = '3'
6-
assert '$a1' == '["1", "2", "3"]'
6+
assert '$a1' == "['1', '2', '3']"
77

88
mut a2 := [2]string
99
a2[0] = 'a'
1010
a2[1] = 'b'
11-
assert '$a2' == '["a", "b"]'
11+
assert '$a2' == "['a', 'b']"
1212

1313
mut c1 := [3]int
1414
c1[0] = 1

vlib/v/tests/map_to_string_test.v

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,30 +9,30 @@ fn test_interpolation_map_to_string() {
99
a['1'] = 'one'
1010
a['2'] = 'two'
1111
a['3'] = 'three'
12-
assert '$a' == '{"1": "one", "2": "two", "3": "three"}'
12+
assert '$a' == "{'1': 'one', '2': 'two', '3': 'three'}"
1313

1414
mut b := map[string]int
1515
b['1'] = 1
1616
b['2'] = 2
1717
b['3'] = 3
18-
assert '$b' == '{"1": 1, "2": 2, "3": 3}'
18+
assert '$b' == "{'1': 1, '2': 2, '3': 3}"
1919

2020
mut c := map[string]bool
2121
c['1'] = true
2222
c['2'] = false
23-
assert '$c' == '{"1": true, "2": false}'
23+
assert '$c' == "{'1': true, '2': false}"
2424

2525
d := {'f1': 1.1, 'f2': 2.2, 'f3': 3.3, 'f4': 4.4}
26-
assert '$d' == '{"f1": 1.1, "f2": 2.2, "f3": 3.3, "f4": 4.4}'
26+
assert '$d' == "{'f1': 1.1, 'f2': 2.2, 'f3': 3.3, 'f4': 4.4}"
2727

2828
mut e := map[string]Test
2929
e['1'] = Test{true, 0, 'abc'}
3030
e['2'] = Test{true, 1, 'def'}
3131
e['3'] = Test{false, 2, 'ghi'}
3232
s := '$e'
33-
assert s.contains('{"1": Test {')
33+
assert s.contains("{'1': Test {")
3434
assert s.contains('a: true')
3535
assert s.contains("y: 'abc'")
36-
assert s.contains('}, "2": Test {')
36+
assert s.contains("}, '2': Test {")
3737
assert s.contains("y: 'def'")
3838
}

vlib/v/tests/str_gen_test.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,6 @@ fn test_array_of_bytes() {
5050

5151
fn test_array_of_strings() {
5252
aa := ['aa', 'bb', 'cc']
53-
assert aa.str() == '["aa", "bb", "cc"]'
54-
assert '$aa' == '["aa", "bb", "cc"]'
53+
assert aa.str() == "['aa', 'bb', 'cc']"
54+
assert '$aa' == "['aa', 'bb', 'cc']"
5555
}

vlib/v/tests/string_interpolation_array_test.v

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ fn test_array_of_structs_interpolation() {
2323
assert s.contains('Man {')
2424
assert s.contains("name: 'Superman'")
2525
assert s.contains('age: 30')
26-
assert s.contains('"being nice"')
26+
assert s.contains("'being nice'")
2727
assert s.contains('}, Man {')
2828
assert s.contains("name: 'Bilbo Baggins'")
2929
assert s.contains('age: 111')
30-
assert s.contains('interests: ["exploring", "hiding"]')
30+
assert s.contains("interests: ['exploring', 'hiding']")
3131
assert s.contains('}]')
3232
// println(s)
3333
}
@@ -74,5 +74,5 @@ fn test_array_of_bytes_interpolation() {
7474

7575
fn test_array_of_strings_interpolation() {
7676
aa := ['aa', 'bb', 'cc']
77-
assert '$aa' == '["aa", "bb", "cc"]'
77+
assert '$aa' == "['aa', 'bb', 'cc']"
7878
}

vlib/v/tests/string_interpolation_struct_test.v

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ fn test_default_struct_string_interpolation() {
1111
superman := Man{'Superman', 30, ['flying', 'fighting evil', 'being nice']}
1212
s := '$superman'
1313
assert s.contains('Man {')
14-
assert s.contains('name: \'Superman\'')
14+
assert s.contains("name: 'Superman'")
1515
assert s.contains('age: 30')
1616
assert s.contains('interests: [')
17-
assert s.contains('"being nice"')
17+
assert s.contains("'being nice'")
1818
assert s.contains('}')
1919
// println(s)
2020
}

0 commit comments

Comments
 (0)