| library /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| import "package:expect/expect.dart" as exp; |
| |
| import "package:expect/expect.dart"; |
| |
| static field core::int global = 0; |
| static method fact4() → dynamic { |
| core::int f = 1; |
| { |
| core::Iterator<core::int> :sync-for-iterator = core::_GrowableList::_literal4<core::int>(1, 2, 3, 4).{core::Iterable::iterator}{core::Iterator<core::int>}; |
| for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { |
| core::int n = :sync-for-iterator.{core::Iterator::current}{core::int}; |
| { |
| f = f.{core::num::*}(n){(core::num) → core::int}; |
| } |
| } |
| } |
| return f; |
| } |
| static method fact5() → dynamic { |
| core::int f = 1; |
| core::int n; |
| { |
| core::Iterator<core::int> :sync-for-iterator = core::_GrowableList::_literal5<core::int>(1, 2, 3, 4, 5).{core::Iterable::iterator}{core::Iterator<core::int>}; |
| for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { |
| final core::int #t1 = :sync-for-iterator.{core::Iterator::current}{core::int}; |
| { |
| n = #t1; |
| f = f.{core::num::*}(n){(core::num) → core::int}; |
| } |
| } |
| } |
| return f; |
| } |
| static method fact6() → dynamic { |
| core::int f = 1; |
| { |
| core::Iterator<core::int> :sync-for-iterator = core::_GrowableList::_literal6<core::int>(1, 2, 3, 4, 5, 6).{core::Iterable::iterator}{core::Iterator<core::int>}; |
| for (; :sync-for-iterator.{core::Iterator::moveNext}(){() → core::bool}; ) { |
| final core::int #t2 = :sync-for-iterator.{core::Iterator::current}{core::int}; |
| { |
| self::global = #t2; |
| f = f.{core::num::*}(self::global){(core::num) → core::int}; |
| } |
| } |
| } |
| return f; |
| } |
| static method main() → dynamic { |
| exp::Expect::isTrue(self::fact4() =={core::Object::==}{(core::Object) → core::bool} 24); |
| exp::Expect::isTrue(self::fact5() =={core::Object::==}{(core::Object) → core::bool} 120); |
| exp::Expect::isTrue(self::fact6() =={core::Object::==}{(core::Object) → core::bool} 720); |
| } |