Вход Регистрация
Файл: includes/library/aws/JmesPath/SyntaxErrorException.php
Строк: 47
<?php
namespace JmesPath;

/**
 * Syntax errors raise this exception that gives context
 */
class SyntaxErrorException extends InvalidArgumentException
{
    
/**
     * @param string $expectedTypesOrMessage Expected array of tokens or message
     * @param array  $token                  Current token
     * @param string $expression             Expression input
     */
    
public function __construct(
        
$expectedTypesOrMessage,
        array 
$token,
        
$expression
    
) {
        
$message "Syntax error at character {$token['pos']}n"
            
$expression "n" str_repeat(' '$token['pos']) . "^n";
        
$message .= !is_array($expectedTypesOrMessage)
            ? 
$expectedTypesOrMessage
            
$this->createTokenMessage($token$expectedTypesOrMessage);
        
parent::__construct($message);
    }

    private function 
createTokenMessage(array $token, array $valid)
    {
        return 
sprintf(
            
'Expected one of the following: %s; found %s "%s"',
            
implode(', 'array_keys($valid)),
            
$token['type'],
            
$token['value']
        );
    }
}
Онлайн: 0
Реклама