| library; |
| import self as self; |
| import "dart:core" as core; |
| import "dart:_internal" as _in; |
| |
| static method main() → void { |
| core::List<core::int> list = <core::int>[1, 2, 3]; |
| core::print(self::subs<core::int>(list)); |
| } |
| static method subs<A extends core::Object? = dynamic>(core::List<self::subs::A%> list) → core::List<core::List<self::subs::A%>> |
| return block { |
| core::List<core::List<self::subs::A%>> #t1; |
| final synthesized core::List<self::subs::A%> #0#0 = list; |
| late final synthesized core::int #0#1 = #0#0.{core::List::length}{core::int}; |
| #L1: |
| { |
| { |
| if(#0#1.{core::num::<=}(#C1){(core::num) → core::bool}) { |
| #t1 = <core::List<self::subs::A%>>[]; |
| break #L1; |
| } |
| } |
| { |
| hoisted self::subs::A% x; |
| hoisted core::List<self::subs::A%> xs; |
| if(#0#1.{core::num::>=}(#C2){(core::num) → core::bool} && (let final dynamic #t2 = x = #0#0.{core::List::[]}(0){(core::int) → self::subs::A%} in true) && (let final dynamic #t3 = xs = #0#0.{core::List::sublist}(1){(core::int, [core::int?]) → core::List<self::subs::A%>} in true)) { |
| #t1 = block { |
| final core::List<core::List<self::subs::A%>> #t4 = <core::List<self::subs::A%>>[]; |
| for (core::List<self::subs::A%> ys in self::subs<self::subs::A%>(xs)) |
| #t4.{core::List::addAll}{Invariant}(<core::List<self::subs::A%>>[<self::subs::A%>[x].{core::List::+}(ys){(core::List<self::subs::A%>) → core::List<self::subs::A%>}, ys]){(core::Iterable<core::List<self::subs::A%>>) → void}; |
| #t4.{core::List::add}{Invariant}(<self::subs::A%>[x]){(core::List<self::subs::A%>) → void}; |
| } =>#t4; |
| break #L1; |
| } |
| } |
| throw new _in::ReachabilityError::•("`null` encountered as case in a switch expression with a non-nullable type."); |
| } |
| } =>#t1; |
| |
| constants { |
| #C1 = 0 |
| #C2 = 1 |
| } |