v2 / vlib / v / gen / c / testdata / autofree_compare_strings_if_expr.vv
29 lines · 26 sloc · 653 bytes · 5db3330069617c4be85df44ffce5ea0538812f53
Raw
1// vtest vflags: -autofree
2import os
3
4fn string_compare(a string, b string, ignore_case bool) int {
5 return match ignore_case {
6 true { compare_strings(a.to_lower(), b.to_lower()) }
7 else { compare_strings(a, b) }
8 }
9}
10
11fn right_pad_end(s string, width int) string {
12 pad := width - s.len
13 if pad > 0 {
14 return s + ' '.repeat(pad)
15 }
16 return s
17}
18
19fn main() {
20 ext_cmp := compare_strings(os.file_ext('foo.v'), os.file_ext('bar.md'))
21 println(ext_cmp)
22 println(string_compare('Ab', 'aB', true))
23 show_header := true
24 title := 'name'
25 mut buffer := '>'
26 buffer += right_pad_end(if show_header { title } else { '' }, 6)
27 buffer += '<'
28 println(buffer)
29}
30