Iterate through the segments of the current request path
find the corresponding module configuration and set controller & action
accordingly

@param string $value
@return boolean|integer
431950
protected function matchValue($value)
    {
        $format = pathinfo($value, PATHINFO_EXTENSION);
        if ($format !== '') {
            $value = substr($value, 0, strlen($value) - strlen($format) - 1);
        }
        $segments = Arrays::trimExplode('/', $value);

        $currentModuleBase = $this->settings['modules'];
        if ($segments === [] || !isset($currentModuleBase[$segments[0]])) {
            return self::MATCHRESULT_NOSUCHMODULE;
        }

        $modulePath = [];
        $level = 0;
        $moduleConfiguration = null;
        $moduleController = null;
        $moduleAction = 'index';
        foreach ($segments as $segment) {
            if (isset($currentModuleBase[$segment])) {
                $modulePath[] = $segment;
                $moduleConfiguration = $currentModuleBase[$segment];

                if (isset($moduleConfiguration['controller'])) {
                    $moduleController = $moduleConfiguration['controller'];
                } else {
                    $moduleController = null;
                }

                if (isset($moduleConfiguration['submodules'])) {
                    $currentModuleBase = $moduleConfiguration['submodules'];
                } else {
                    $currentModuleBase = [];
                }
            } else {
                if ($level === count($segments) - 1) {
                    $moduleMethods = array_change_key_case(array_flip(get_class_methods($moduleController)), CASE_LOWER);
                    if (array_key_exists($segment . 'action', $moduleMethods)) {
                        $moduleAction = $segment;
                        break;
                    }
                }
                return self::MATCHRESULT_NOSUCHMODULE;
            }
            $level++;
        }

        if ($moduleController === null) {
            return self::MATCHRESULT_NOCONTROLLER;
        }

        $this->value = [
            'module' => implode('/', $modulePath),
            'controller' => $moduleController,
            'action' => $moduleAction
        ];

        if ($format !== '') {
            $this->value['format'] = $format;
        }

        return self::MATCHRESULT_FOUND;
    }
1358782
protected function getNegationWhenConfigured($value, $configuration)
    {
        if (!is_array($configuration) || empty($configuration['negate']) || (bool)$configuration['negate'] === false) {
            return $value;
        }

        return !((bool)$value);
    }
1090320
public function value($value = NULL) {
        if($value == NULL) {
            return false;
        }
        
        $o = explode('.',$value);
        $data = $this->request->data;
        return $data[$o[0]][$o[1]][$o[2]];
    }
168080
public function transform($value)
    {
        $result = array();
        $configuration = $this->generatePerimeterManager->generatePerimeters($value->getOwner()->getSite()->getSiteId());
        $value = $value->toArray();

        foreach ($configuration as $type => &$paths) {
            $items = array_key_exists($type, $value) ? $value[$type]->getItems() : array();
            array_walk($paths, function($path) use (&$result, $items, $type) {
                $key = GeneratePerimeterManager::changePathToName($path);
                $result[$type][$key] = in_array($path, $items);
                $result[$type][$key] = false;
                foreach($items as $item) {
                    $result[$type][$key] = $result[$type][$key] || preg_match('/^' . preg_quote($item, '/') . '.*$/', $path);
                }
            });
        }

        return $result;
    }
337435
private function hasOperators($value)
    {

        if (!is_array($value) && !is_object($value)) {
            return false;
        }

        if (is_object($value)) {
            $value = get_object_vars($value);
        }

        foreach ($value as $key => $subValue) {
            if (true === $this->isOperator($key)) {
                return true;
            }
        }
        return false;
    }
134887
public function setValue( $value )
    {
        if ( $value instanceof Traversable )
        {
            $value = ArrayUtils::iteratorToArray( $value );
        }

        return parent::setValue( (array) $value );
    }
1076539
protected function getSiteURL($value)
    {
        if( ! IS::url($value) )
        {
            $value = Request::getSiteURL($value);
        }

        return $value;
    }
610280
public function setCoreRequestMethodStrict($value)
    {
        $this->setFieldName('request_method_strict');
        $this->loadObject(true);
        $this->setFieldValue($value);

        return $this;
    }
1065474
protected function getOperationValue($value) {
        
        if(is_a($value, '\\oat\\search\\base\\QueryBuilderInterface')) {
            $serialyser = new self();
            $serialyser->setDriverEscaper($this->getDriverEscaper())->setServiceLocator($this->getServiceLocator())->setOptions($this->getOptions());
            $value = $serialyser->setCriteriaList($value)->prefixQuery()->serialyse();
        }
        return $value;
    }
180075
public function resolveRouteBinding($value)
    {
        return in_array(request()->route('accessarea'), config('cortex.foundation.obscure'))
            ? $this->where($this->getKeyName(), optional(Hashids::decode($value))[0])->first()
            : $this->where($this->getRouteKeyName(), $value)->first();
    }
757590
public function set($path, $value = self::NULL_ARGUMENT)
    {
        $request = $this->createRequest('PUT', $path, $value);
        return $this->handleRequest($request);
    }
753842
public function perms($value = false)
    {
        if ($value === false) {
            return substr(sprintf('%o', $this->adapter->fileperms($this->path)), -4);
        }

        if (! $this->adapter->chmod($this->path, $value)) {
            throw new FilesystemException("Unable to apply permissions to '{$this->path}'");
        }

        $this->clearStat();

        return $this;
    }
1106078
public function setCoreModxBrowserTreeHideFiles($value)
    {
        $this->setFieldName('modx_browser_tree_hide_files');
        $this->loadObject(true);
        $this->setFieldValue($value);

        return $this;
    }
608544
public function setConfig($paths = [], $value = null)
    {
        if (!is_array($paths)) {
            $paths = [$paths => $value];
        }

        foreach ($paths as $path=>$value) {
            $pos = &$this->_lookupConfigElement($path, true);

            if (is_array($pos) && !empty($pos) && is_array($value)) {
                // special treatment for arrays - merge them
                $pos = array_merge($pos, $value);
            } else {
                // otherwise just assign value
                $pos = $value;
            }
        }

        return $this;
    }
169634
public function setModule($value) {
		if (is_object($value)) {
			$this->module = get_class($value);
		}else {
			$this->module = (string) $value;
		}
	}
937746
public function setActionName($value)
        {
            $this->_action = $value;
            /**
             * @see ZF-3465
             */
            if (null === $value) {
                $this->setParam($this->getActionKey(), $value);
            }
            return $this;
        }
33846
public function checkPlain($value)
    {
        if (!Type::isStringable($value)) {
            return false;
        }

        $string = "$value";

        return $string == strip_tags($string);
    }