<?php
/**
* Defines the core helper infrastructure of the library.
*/
declare(strict_types=1);
namespace PhpMyAdmin\SqlParser;
use Exception;
class Core
{
/**
* Whether errors should throw exceptions or just be stored.
*
* @see static::$errors
*
* @var bool
*/
public $strict = false;
/**
* List of errors that occurred during lexing.
*
* Usually, the lexing does not stop once an error occurred because that
* error might be false positive or a partial result (even a bad one)
* might be needed.
*
* @see Core::error()
*
* @var Exception[]
*/
public $errors = [];
/**
* Creates a new error log.
*
* @param Exception $error the error exception
*
* @throws Exception throws the exception, if strict mode is enabled.
*/
public function error($error)
{
if ($this->strict) {
throw $error;
}
$this->errors[] = $error;
}
}
|