xref: /PHP-8.0/Zend/zend_exceptions.stub.php (revision 45fa7596)
1<?php
2
3/** @generate-function-entries */
4
5interface Throwable extends Stringable
6{
7    public function getMessage(): string;
8
9    /** @return int */
10    public function getCode();
11
12    public function getFile(): string;
13
14    public function getLine(): int;
15
16    public function getTrace(): array;
17
18    public function getPrevious(): ?Throwable;
19
20    public function getTraceAsString(): string;
21}
22
23class Exception implements Throwable
24{
25    final private function __clone(): void {}
26
27    public function __construct(string $message = "", int $code = 0, ?Throwable $previous = null) {}
28
29    /** @return void */
30    public function __wakeup() {}
31
32    final public function getMessage(): string {}
33
34    /** @return int */
35    final public function getCode() {}
36
37    final public function getFile(): string {}
38
39    final public function getLine(): int {}
40
41    final public function getTrace(): array {}
42
43    final public function getPrevious(): ?Throwable {}
44
45    final public function getTraceAsString(): string {}
46
47    public function __toString(): string {}
48}
49
50class ErrorException extends Exception
51{
52    public function __construct(string $message = "", int $code = 0, int $severity = E_ERROR, ?string $filename = null, ?int $line = null, ?Throwable $previous = null) {}
53
54    final public function getSeverity(): int {}
55}
56
57class Error implements Throwable
58{
59    /** @implementation-alias Exception::__clone */
60    final private function __clone(): void {}
61
62    /** @implementation-alias Exception::__construct */
63    public function __construct(string $message = "", int $code = 0, ?Throwable $previous = null) {}
64
65    /**
66     * @return void
67     * @implementation-alias Exception::__wakeup
68     */
69    public function __wakeup() {}
70
71    /** @implementation-alias Exception::getMessage */
72    final public function getMessage(): string {}
73
74    /**
75     * @return int
76     * @implementation-alias Exception::getCode
77     */
78    final public function getCode() {}
79
80    /** @implementation-alias Exception::getFile */
81    final public function getFile(): string {}
82
83    /** @implementation-alias Exception::getLine */
84    final public function getLine(): int {}
85
86    /** @implementation-alias Exception::getTrace */
87    final public function getTrace(): array {}
88
89    /** @implementation-alias Exception::getPrevious */
90    final public function getPrevious(): ?Throwable {}
91
92    /** @implementation-alias Exception::getTraceAsString */
93    final public function getTraceAsString(): string {}
94
95    /** @implementation-alias Exception::__toString */
96    public function __toString(): string {}
97}
98
99class CompileError extends Error
100{
101}
102
103class ParseError extends CompileError
104{
105}
106
107class TypeError extends Error
108{
109}
110
111class ArgumentCountError extends TypeError
112{
113}
114
115class ValueError extends Error
116{
117}
118
119class ArithmeticError extends Error
120{
121}
122
123class DivisionByZeroError extends ArithmeticError
124{
125}
126
127class UnhandledMatchError extends Error
128{
129}
130