diff options
Diffstat (limited to 'vendor/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php')
-rw-r--r-- | vendor/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/vendor/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php b/vendor/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php new file mode 100644 index 000000000..784b61b14 --- /dev/null +++ b/vendor/nikic/php-parser/lib/PhpParser/ErrorHandler/Collecting.php @@ -0,0 +1,46 @@ +<?php declare(strict_types=1); + +namespace PhpParser\ErrorHandler; + +use PhpParser\Error; +use PhpParser\ErrorHandler; + +/** + * Error handler that collects all errors into an array. + * + * This allows graceful handling of errors. + */ +class Collecting implements ErrorHandler +{ + /** @var Error[] Collected errors */ + private $errors = []; + + public function handleError(Error $error) { + $this->errors[] = $error; + } + + /** + * Get collected errors. + * + * @return Error[] + */ + public function getErrors() : array { + return $this->errors; + } + + /** + * Check whether there are any errors. + * + * @return bool + */ + public function hasErrors() : bool { + return !empty($this->errors); + } + + /** + * Reset/clear collected errors. + */ + public function clearErrors() { + $this->errors = []; + } +} |