1fn test_assign() { 2 _ = 123 3} 4 5fn fn_with_blank_param(_ int) { 6 _ = 456 7} 8 9fn test_fn_with_blank_param() { 10 fn_with_blank_param(321) 11} 12 13fn test_for_in_range() { 14 for _ in 1 .. 10 { 15 assert true 16 } 17} 18 19fn test_nested_range() { 20 for _ in 1 .. 10 { 21 for _ in 1 .. 10 { 22 assert true 23 } 24 } 25} 26 27fn test_for_in_array_simple() { 28 for _ in [1, 2, 3] { 29 assert true 30 } 31} 32 33fn test_for_in_array_key() { 34 mut i := 1 35 for _, v in [1, 2, 3] { 36 assert v == i 37 i++ 38 } 39} 40 41fn test_for_in_array_val() { 42 mut j := 0 43 for i, _ in [3, 4, 5] { 44 assert i == j 45 j++ 46 } 47} 48 49fn test_for_in_array_both() { 50 for _, _ in [1, 2, 3] { 51 assert true 52 } 53} 54 55fn test_nested_for_in_array_simple() { 56 for _ in [1, 2, 3] { 57 for _ in [1, 2, 3] { 58 assert true 59 } 60 } 61} 62 63fn test_nested_for_in_array_key() { 64 for _, v in [1, 2, 3] { 65 for _, w in [1, 2, 3] { 66 assert true 67 } 68 } 69} 70 71fn test_nested_for_in_array_val() { 72 for i, _ in [1, 2, 3] { 73 for j, _ in [1, 2, 3] { 74 assert true 75 } 76 } 77} 78 79fn test_nested_for_in_array_both() { 80 for _, _ in [1, 2, 3] { 81 for _, _ in [1, 2, 3] { 82 assert true 83 } 84 } 85} 86 87const ( 88 m = { 89 'key': 'value' 90 } 91) 92 93fn test_for_in_map_key() { 94 for _, v in m { 95 assert v == 'value' 96 } 97} 98 99fn test_for_in_map_val() { 100 for i, _ in m { 101 assert i == 'key' 102 } 103} 104 105fn test_for_in_map_both() { 106 for _, _ in m { 107 assert true 108 } 109} 110 111fn test_nested_for_in_map_key() { 112 for _, v in m { 113 assert v == 'value' 114 for _, w in m { 115 assert w == 'value' 116 } 117 } 118} 119 120fn test_nested_for_in_map_val() { 121 for i, _ in m { 122 assert i == 'key' 123 for j, _ in m { 124 assert j == 'key' 125 } 126 } 127} 128 129fn test_nested_for_in_map_both() { 130 for _, _ in m { 131 for _, _ in m { 132 assert true 133 } 134 } 135} 136 137fn fn_for_in_variadic_args_simple(arr ...string) { 138 for _ in arr { 139 assert true 140 } 141} 142 143fn fn_for_in_variadic_args_key(arr ...string) { 144 for _, v in arr { 145 assert true 146 } 147} 148 149fn fn_for_in_variadic_args_val(arr ...string) { 150 for i, _ in arr { 151 assert true 152 } 153} 154 155fn fn_for_in_variadic_args_both(arr ...string) { 156 for _, _ in arr { 157 assert true 158 } 159} 160 161fn fn_nested_for_in_variadic_args(arr ...string) { 162 for _ in arr { 163 for _ in arr { 164 assert true 165 } 166 } 167} 168 169fn fn_nested_for_in_variadic_args_key(arr ...string) { 170 for _, v in arr { 171 for _, w in arr { 172 assert true 173 } 174 } 175} 176 177fn fn_nested_for_in_variadic_args_val(arr ...string) { 178 for i, _ in arr { 179 for j, _ in arr { 180 assert true 181 } 182 } 183} 184 185fn fn_nested_for_in_variadic_args_both(arr ...string) { 186 for _, _ in arr { 187 for _, _ in arr { 188 assert true 189 } 190 } 191} 192 193fn test_for_in_variadic_args() { 194 fn_for_in_variadic_args_simple('a', 'b', 'c') 195 fn_for_in_variadic_args_key('a', 'b', 'c') 196 fn_for_in_variadic_args_val('a', 'b', 'c') 197 fn_for_in_variadic_args_both('a', 'b', 'c') 198 fn_nested_for_in_variadic_args('a', 'b', 'c') 199 fn_nested_for_in_variadic_args_key('a', 'b', 'c') 200 fn_nested_for_in_variadic_args_val('a', 'b', 'c') 201 fn_nested_for_in_variadic_args_both('a', 'b', 'c') 202} 203 204fn test_for_in_string_simple() { 205 for _ in 'abcd' { 206 assert true 207 } 208} 209 210fn test_for_in_string_key() { 211 for _, v in 'a' { 212 assert v == `a` 213 } 214} 215 216fn test_for_in_string_val() { 217 for i, _ in 'a' { 218 assert i == 0 219 } 220} 221 222fn test_for_in_string_both() { 223 for _, _ in 'abcd' { 224 assert true 225 } 226} 227 228fn test_nested_for_in_string_simple() { 229 for _ in 'abcd' { 230 for _ in 'abcd' { 231 assert true 232 } 233 } 234} 235 236fn test_nested_for_in_string_key() { 237 for _, v in 'a' { 238 assert v == `a` 239 for _, w in 'a' { 240 assert w == `a` 241 } 242 } 243} 244 245fn test_nested_for_in_string_val() { 246 for i, _ in 'a' { 247 assert i == 0 248 for j, _ in 'a' { 249 assert j == 0 250 } 251 } 252} 253 254fn test_nested_for_in_string_both() { 255 for _, _ in 'abcd' { 256 for _, _ in 'abcd' { 257 assert true 258 } 259 } 260} 261 262fn multi_return() (int, int, string) { 263 return 1, 2, '3' 264} 265 266fn test_blank_multi_return() { 267 _, a, b := multi_return() 268 c, _, d := multi_return() 269 e, f, _ := multi_return() 270 _, _, g := multi_return() 271 _, h, _ := multi_return() 272 i, _, _ := multi_return() 273 _, _, _ := multi_return() 274} 275