Subversion-Projekte lars-tiefland.laravel_shop

Revision

Revision 148 | Details | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
148 lars 1
<?php
2
 
3
/*
4
 * This file is part of Psy Shell.
5
 *
200 lars 6
 * (c) 2012-2023 Justin Hileman
148 lars 7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
 
12
namespace Psy\Exception;
13
 
14
/**
15
 * A "parse error" Exception for Psy.
16
 */
17
class ParseErrorException extends \PhpParser\Error implements Exception
18
{
19
    /**
20
     * Constructor!
21
     *
22
     * @param string $message (default: "")
23
     * @param int    $line    (default: -1)
24
     */
25
    public function __construct(string $message = '', int $line = -1)
26
    {
27
        $message = \sprintf('PHP Parse error: %s', $message);
28
        parent::__construct($message, $line);
29
    }
30
 
31
    /**
32
     * Create a ParseErrorException from a PhpParser Error.
33
     *
34
     * @param \PhpParser\Error $e
35
     */
36
    public static function fromParseError(\PhpParser\Error $e): self
37
    {
38
        return new self($e->getRawMessage(), $e->getStartLine());
39
    }
40
}