| library /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| import "package:expect/expect.dart" as exp; |
| |
| import "package:expect/expect.dart"; |
| |
| static const field core::int b = #C1; |
| static method fn(core::int a) → core::int { |
| if(a =={core::num::==}{(core::Object) → core::bool} 1) |
| return 1; |
| return a.{core::num::*}(self::fn(a.{core::num::-}(1){(core::num) → core::int})){(core::num) → core::int}; |
| } |
| static method localTest() → core::int { |
| function fnLocal(core::int a) → core::int { |
| if(a =={core::num::==}{(core::Object) → core::bool} 1) |
| return 1; |
| return a.{core::num::*}(fnLocal(a.{core::num::-}(1){(core::num) → core::int}){(core::int) → core::int}){(core::num) → core::int}; |
| } |
| return #C1; |
| } |
| static method main() → void { |
| exp::Expect::equals(#C1, 24); |
| exp::Expect::equals(self::localTest(), 24); |
| } |
| |
| constants { |
| #C1 = 24 |
| } |