blob: 55560f8e2b070278f2afea2f52bc69f202fd1775 [file] [log] [blame]
void main() {
List<int> list = [1, 2, 3];
print(subs(list));
}
List<List<A>> subs<A>(List<A> list) => switch (list) {
[] => [],
[var x, ...var xs] => [
for (var ys in subs(xs)) ...[
[x] + ys,
ys
],
[x]
],
};