blob: 1d3eeea1c655886bc8285ca314eee25cac68084d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
<?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;
}
}
|