protected function parseName($expect = true, $match = null)
{
static $constants = array('true', 'false', 'null');
static $operators = array('and', 'xor', 'or', 'not', 'in');
if ($this->stream->test(Token::CONSTANT, $constants)) {
return $this->stream->expect(Token::CONSTANT, $match);
} elseif ($this->stream->test(Token::OPERATOR, $operators)) {
return $this->stream->expect(Token::OPERATOR, $match);
} elseif ($expect or $this->stream->test(Token::NAME)) {
return $this->stream->expect(Token::NAME, $match);
}
}