public function pipeLast() { $arguments = \func_get_args(); $f = \array_shift($arguments); $arguments[] = $this->value; $this->value = Operators::invokeArray($f, $arguments); return $this; }
public function zip(){ $arguments = \func_get_args(); \array_unshift($arguments, $this->iterator); $this->iterator = Operators::invokeArray([Iterators::_class, 'zip'], $arguments); return $this; }
public static function paramLimit(callable $f, $limit){ return static function() use ($f, $limit){ return Operators::invokeArray( $f, (new \Yasca\Core\IteratorBuilder) ->from(\func_get_args()) ->take($limit) ->toArray() ); }; }
public static function __callStatic($name, array $arguments){ return Operators::invokeArray(static::$$name, $arguments); }