Advertisement
Guest User

Untitled

a guest
May 24th, 2019
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.47 KB | None | 0 0
  1. <?php
  2. class Pipeline
  3. {
  4. public static function make_pipeline(...$funcs)
  5. {
  6. return function($arg) use ($funcs)
  7. {
  8. foreach ($funcs as $function) {
  9. $result = $function($arg);
  10. $arg = $result;
  11. }
  12.  
  13. return $result;
  14. };
  15. }
  16. }
  17.  
  18. $fun = Pipeline::make_pipeline(function($x) { return $x * 3; }, function($x) { return $x + 1; },
  19. function($x) { return $x / 2; });
  20. echo $fun(3); # should print 5
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement