blob: d347bcc16a5b2295d0a3d6167d3a72f3c44dc54f [file] [log] [blame]
// Copyright (c) 2023, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
void test1() {
switch (42) {
case var v when (v = 1) > 0:
print(v);
break;
default:
}
}
void test2() {
var z = switch (42) { int v when (v = 1) >= 0 => v, _ => -1 };
print(z);
}
void test3() {
if (42 case var v when (v = 1) > 0) {
print(v);
}
}
void test4() {
List l = [1, if (42 case int v when (v = 1) > 0) v else 1, 3];
print(l);
}
void test5(o) {
if (o case [var a]
when switch (a) {
5 when (a = 4) < 1 => true,
_ => false,
}) {
print(a);
}
}