protected function extractType($name)
    {
        if (count($this->types) <= 0) {
            return false;
        }

        foreach ($this->types as $type) {
            foreach ($this->matcher as $function => $pattern) {
                if (str_replace(array('{type}', '{uType}'), array($type, ucfirst($type)), $pattern) === $name) {
                    return array($type, $function);
                }
            }
        }

        return false;
    }