Lexer.php
protected function scanExpression()
    {

        foreach ($this->scanToken(
            'expression',
            "([?]?[!]?[=])[\t ]*(?<value>[^\n]*)"
        ) as $token) {

            $token['escaped'] = strstr($this->getMatch(1), '!') ? false : true;
            $token['unchecked'] = strstr($this->getMatch(1), '?') ? true : false;
            yield $token;
        }
    }
protected function scanExpression()
    {

        foreach ($this->scanToken(
            'expression',
            "([?]?[!]?[=])[\t ]*(?<value>[^\n]*)"
        ) as $token) {

            $token['escaped'] = strstr($this->getMatch(1), '!') ? false : true;
            $token['unchecked'] = strstr($this->getMatch(1), '?') ? true : false;
            yield $token;
        }
    }
protected function scanExpression ( ) { foreach ( $ this -> scanToken ( 'expression' , "([?]?[!]?[=])[\t ]*(?<value>[^\n]*)" ) as $ token ) { $ token [ 'escaped' ] = strstr ( $ this -> getMatch ( 1 ) , '!' ) ? false : true ; $ token [ 'unchecked' ] = strstr ( $ this -> getMatch ( 1 ) , '?' ) ? true : false ; yield $ token ; } }
Scans for !=-style expression.

e.g.
!= expr
= expr

Expression-tokens always have:
escaped, which indicates that the expression result should be escaped
value, which is the code of the expression

@return \Generator
Scans for ! = - style expression .