@param string $name
@param $options

@return null
325278
public function make($name, $options = [])
    {
        if (!$name || !$this->exists($name)) {
            return null;
        }

        return $name($options);
    }
889204
protected function loadRole($name, $options = array(), $parent = null)
    {
        if (isset($options['children']) && count($options['children']) > 0) {
            $children = $options['children'];
        } else {
            $children = array();
        }

        $roles   = array();
        $role    = new Role($name, $parent);
        $roles[] = $role;

        foreach ($children as $key => $value) {
            if (is_numeric($key)) {
                $roles = array_merge($roles, $this->loadRole($value, array(), $role));
            } else {
                $roles = array_merge($roles, $this->loadRole($key, $value, $role));
            }
        }

        return $roles;
    }
267210
public function getRequired($name, array $options = [])
    {
        $options = $this->options($options);
        $value   = $this->helper()->arr()->getRequired($this->storage(), $name);

        return $this->decrypt($value, $options);
    }
672534
public function pathBuilder($name = null, array $options = []) {
		if ($name instanceof PathBuilderInterface) {
			$this->_pathBuilder = $name;

			return $this->_pathBuilder;
		}

		if ($name !== null) {
			$this->_pathBuilder = $this->createPathBuilder($name, $options);
		}

		return $this->_pathBuilder;
	}
242141
public function task($name, array $options = [])
    {
        $this->taskProcessor->setOutput($this);
        $this->taskProcessor->execute($name, $options);
    }
850933
public function file($name, array $options = [])
    {
        return $this->form->file($name, $this->addFormControlClass($this->getFieldOptions($name, $options)));
    }
1158302
public function parseDefaults($name, $options)
    {
        $model = $this->config->getDataModel();

        //if the name is not a string or the options is not an array at this point, throw an error because we can't do anything with it
        if (!is_string($name) || !is_array($options)) {
            throw new \InvalidArgumentException('A custom action in your  '.$this->config->getOption('action_name').' configuration file is invalid');
        }

        //set the action name
        $options['action_name'] = $name;

        //set the permission
        $permission                = $this->validator->arrayGet($options, 'permission', false);
        $options['has_permission'] = is_callable($permission) ? $permission($model) : true;

        //check if the messages array exists
        $options['messages'] = $this->validator->arrayGet($options, 'messages', array());
        $options['messages'] = is_array($options['messages']) ? $options['messages'] : array();

        return $options;
    }
1146961
public function plugin(string $name, array $options = []): PluginInterface
    {
        return $this->getPluginManager()->get($name, $options);
    }
900119
public function validateOptions($name, $options)
	{
		if (is_string($options))
		{
			$name = $options;
			$options = array();
		}

		//if the name is not a string or the options is not an array at this point, throw an error because we can't do anything with it
		if (!is_string($name) || !is_array($options))
		{
			throw new \InvalidArgumentException("One of the fields in your " . $this->config->getOption('name') . " configuration file is invalid");
		}

		//in any case, make sure the 'column_name' option is set
		$options['field_name'] = $name;

		return $options;
	}
1267070
protected function getOptionsList($name, $options)
    {
        if (empty($options)) {
            $options = $this->getOptionsFromModel($name);
        }

        return $options;
    }
665666
protected function renderElement(string $name, array $options = []) : string
    {
        return $this->config->getView()
            ->element($name, $options);
    }
768364
public function alterTable($name, array $options = [])
    {
        $schema = isset($options['schema']) ? new Schema($options['schema']) : null;

        return (new TableApi($name, $schema, $this->manipulation, $this->actions))
            ->alterTable();
    }
397269
public function search($name, $value = null, $options = array())
    {
		return $this->input('search', $name, $value, $options);
    }
1239368
public function embed($name, $options = null)
	{
		if ($this->options && !$options)
		{
			$options = $this->options;
		}

		switch (strtolower($name))
		{
			case 'maps':
				return new Embed\Maps($options);

			case 'analytics':
				return new Embed\Analytics($options);

			default:
				return null;
		}
	}
601031
public function getOption($name)
    {
        return isset($this->optionMapping[$name]) ? $this->optionMapping[$name] : null;
    }
1306386
public function make($name, array $options)
    {
        //check the permission on this item
        $options = $this->parseDefaults($name, $options);

        //now we can instantiate the object
        return $this->getActionObject($options);
    }
729511
public static function getOption($name = null)
    {
        if (null === $name) {
            return self::$_options;
        } else {
            return isset(self::$_options[$name])? self::$_options[$name]: null;
        }
    }