pQuery\HtmlSelector::parse PHP Метод

parse() защищенный Метод

Parse full query
protected parse ( ) : boolean
Результат boolean
    protected function parse()
    {
        $p =& $this->parser;
        $p->setPos(0);
        $this->result = array();
        if (!$this->parse_single()) {
            return false;
        }
        while (count($this->result) > 0) {
            switch ($p->token) {
                case CSSQueryTokenizer::TOK_CHILD:
                    $this->parser->next_no_whitespace();
                    if (!$this->parse_result(false, 1)) {
                        return false;
                    }
                    break;
                case CSSQueryTokenizer::TOK_SIBLING:
                    $this->parser->next_no_whitespace();
                    if (!$this->parse_result(true, 1)) {
                        return false;
                    }
                    break;
                case CSSQueryTokenizer::TOK_PLUS:
                    $this->parser->next_no_whitespace();
                    if (!$this->parse_adjacent()) {
                        return false;
                    }
                    break;
                case CSSQueryTokenizer::TOK_ALL:
                case CSSQueryTokenizer::TOK_IDENTIFIER:
                case CSSQueryTokenizer::TOK_STRING:
                case CSSQueryTokenizer::TOK_BRACE_OPEN:
                case CSSQueryTokenizer::TOK_BRACKET_OPEN:
                case CSSQueryTokenizer::TOK_ID:
                case CSSQueryTokenizer::TOK_CLASS:
                case CSSQueryTokenizer::TOK_COLON:
                    if (!$this->parse_result()) {
                        return false;
                    }
                    break;
                case CSSQueryTokenizer::TOK_NULL:
                    break 2;
                default:
                    $this->error('Invalid search pattern(3): No result modifier found!');
                    return false;
            }
        }
        return true;
    }