Beispiel #1
0
 /**
  * @param \Exception|\ParseError $e
  */
 public function exceptionHandler($e)
 {
     if ($this->mode === 'development') {
         $trace = $e->getTrace();
     } else {
         $trace = $e->getTraceAsString();
     }
     $this->addHandler($e->getCode(), $e->getMessage(), $e->getFile(), $e->getLine(), $trace);
 }
 /**
  * {@inheritdoc}
  */
 public function check()
 {
     if (null !== $this->error) {
         throw new LintingException(sprintf('PHP Parse error: %s on line %d.', $this->error->getMessage(), $this->error->getLine()), $this->error->getCode(), $this->error);
     }
 }
Beispiel #3
0
 /**
  * Get a ErrorException instance.
  *
  * @param \ParseError|\TypeError|\Throwable $exception
  *
  * @return \ErrorException
  */
 private function getErrorException($exception) : ErrorException
 {
     if ($exception instanceof ParseError) {
         $message = 'Parse error: ' . $exception->getMessage();
         $severity = E_PARSE;
     } elseif ($exception instanceof TypeError) {
         $message = 'Type error: ' . $exception->getMessage();
         $severity = E_RECOVERABLE_ERROR;
     } else {
         $message = $exception->getMessage();
         $severity = E_ERROR;
     }
     return new ErrorException($message, $exception->getCode(), $severity, $exception->getFile(), $exception->getLine());
 }