Haanga_Compiler_Tokenizer::getOperator PHP Method

getOperator() public method

public getOperator ( )
    function getOperator()
    {
        static $lencache = array();
        $i =& $this->N;
        $data = substr($this->data, $i, 12);
        foreach (self::$operators as $value => $token) {
            if (!isset($lencache[$value])) {
                $lencache[$value] = strlen($value);
            }
            $len = $lencache[$value];
            switch (strncmp($data, $value, $len)) {
                case -1:
                    if (strlen($data) == $len) {
                        break 2;
                    }
                    break;
                case 0:
                    $this->token = $token;
                    $this->value = $value;
                    $i += $len;
                    return TRUE;
            }
        }
        $data = $this->data[$i];
        foreach (self::$operators_single as $value => $token) {
            if ($value == $data) {
                $this->token = $token;
                $this->value = $value;
                $i += 1;
                return TRUE;
            } else {
                if ($value > $data) {
                    break;
                }
            }
        }
        return FALSE;
    }