12345678910111213141516171819202122 |
- @:callable
- abstract Function(Int->Int) to Int->Int from Int->Int {
- @:op(a * b)
- static inline function chain(a:Function, b:Function):Function {
- return function(i) {
- return a(b(i));
- };
- }
- }
- class Main {
- static function main() {
- var f:Function = function(a) {
- return a + 1;
- };
- var g = function(a) { return a * a; } * f;
- if (g(10) != 121) {
- throw "Incorrect function return value";
- }
- }
- }
|