summaryrefslogtreecommitdiff
path: root/ext/spl/spl_directory.stub.php
blob: 80b708a3f462a987edd1fe8a60bd5f8cb024efff (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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
<?php

/** @generate-class-entries */

class SplFileInfo implements Stringable
{
    public function __construct(string $filename) {}

    /** @return string */
    public function getPath() {}

    /** @return string */
    public function getFilename() {}

    /** @return string */
    public function getExtension() {}

    /** @return string */
    public function getBasename(string $suffix = "") {}

    /** @return string */
    public function getPathname() {}

    /** @return int|false */
    public function getPerms() {}

    /** @return int|false */
    public function getInode() {}

    /** @return int|false */
    public function getSize() {}

    /** @return int|false */
    public function getOwner() {}

    /** @return int|false */
    public function getGroup() {}

    /** @return int|false */
    public function getATime() {}

    /** @return int|false */
    public function getMTime() {}

    /** @return int|false */
    public function getCTime() {}

    /** @return string|false */
    public function getType() {}

    /** @return bool */
    public function isWritable() {}

    /** @return bool */
    public function isReadable() {}

    /** @return bool */
    public function isExecutable() {}

    /** @return bool */
    public function isFile() {}

    /** @return bool */
    public function isDir() {}

    /** @return bool */
    public function isLink() {}

    /** @return string|false */
    public function getLinkTarget() {}

    /** @return string|false */
    public function getRealPath() {}

    /** @return SplFileInfo */
    public function getFileInfo(?string $class = null) {}

    /** @return SplFileInfo|null */
    public function getPathInfo(?string $class = null) {}

    /**
     * @param resource|null $context
     * @return SplFileObject
     */
    public function openFile(string $mode = "r", bool $useIncludePath = false, $context = null) {}

    /** @return void */
    public function setFileClass(string $class = SplFileObject::class) {}

    /** @return void */
    public function setInfoClass(string $class = SplFileInfo::class) {}

    /** @implementation-alias SplFileInfo::getPathname */
    public function __toString(): string {}

    /** @return array */
    public function __debugInfo() {}

    /** @return void */
    final public function _bad_state_ex() {}
}

class DirectoryIterator extends SplFileInfo implements SeekableIterator
{
    public function __construct(string $directory) {}

    /** @return string */
    public function getFilename() {}

    /** @return string */
    public function getExtension() {}

    /** @return string */
    public function getBasename(string $suffix = "") {}

    /** @return bool */
    public function isDot() {}

    /** @return void */
    public function rewind() {}

    /** @return bool */
    public function valid() {}

    /** @return int|false */
    public function key() {}

    /** @return DirectoryIterator */
    public function current() {}

    /** @return void */
    public function next() {}

    /** @return void */
    public function seek(int $offset) {}

    /** @implementation-alias DirectoryIterator::getFilename */
    public function __toString(): string {}
}

class FilesystemIterator extends DirectoryIterator
{
    public function __construct(string $directory, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS) {}

    /** @return void */
    public function rewind() {}

    /** @return string */
    public function key() {}

    /** @return string|SplFileInfo|self */
    public function current() {}

    /** @return int */
    public function getFlags() {}

    /** @return void */
    public function setFlags(int $flags) {}
}

class RecursiveDirectoryIterator extends FilesystemIterator implements RecursiveIterator
{
    public function __construct(string $directory, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO) {}

    /** @return bool */
    public function hasChildren(bool $allowLinks = false) {}

    /** @return RecursiveDirectoryIterator */
    public function getChildren() {}

    /** @return string */
    public function getSubPath() {}

    /** @return string */
    public function getSubPathname() {}
}

#ifdef HAVE_GLOB
class GlobIterator extends FilesystemIterator implements Countable
{
    public function __construct(string $pattern, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO) {}

    /** @return int */
    public function count() {}
}
#endif

class SplFileObject extends SplFileInfo implements RecursiveIterator, SeekableIterator
{
    /** @param resource|null $context */
    public function __construct(string $filename, string $mode = "r", bool $useIncludePath = false, $context = null) {}

    /** @return void */
    public function rewind() {}

    /** @return bool */
    public function eof() {}

    /** @return bool */
    public function valid() {}

    /** @return string */
    public function fgets() {}

    /** @return string|false */
    public function fread(int $length) {}

    /** @return array|false */
    public function fgetcsv(string $separator = ",", string $enclosure = "\"", string $escape = "\\") {}

    /** @return int|false */
    public function fputcsv(array $fields, string $separator = ",", string $enclosure = "\"", string $escape = "\\") {}

    /** @return bool|null */
    public function setCsvControl(string $separator = ",", string $enclosure = "\"", string $escape = "\\") {}

    /** @return array */
    public function getCsvControl() {}

    /**
     * @param int $wouldBlock
     * @return bool
     */
    public function flock(int $operation, &$wouldBlock = null) {}

    /** @return bool */
    public function fflush() {}

    /** @return int|false */
    public function ftell() {}

    /** @return int */
    public function fseek(int $offset, int $whence = SEEK_SET) {}

    /** @return string|false */
    public function fgetc() {}

    /** @return int */
    public function fpassthru() {}

    /** @return array|int|false|null */
    public function fscanf(string $format, mixed &...$vars) {}

    /** @return int|false */
    public function fwrite(string $data, int $length = 0) {}

    /** @return array */
    public function fstat() {}

    /** @return bool */
    public function ftruncate(int $size) {}

    /** @return string|array|false */
    public function current() {}

    /** @return int */
    public function key() {}

    /** @return void */
    public function next() {}

    /** @return void */
    public function setFlags(int $flags) {}

    /** @return int */
    public function getFlags() {}

    /** @return void */
    public function setMaxLineLen(int $maxLength) {}

    /** @return int */
    public function getMaxLineLen() {}

    /** @return bool */
    public function hasChildren() {}

    /** @return null */
    public function getChildren() {}

    /** @return void */
    public function seek(int $line) {}

    /**
     * @return string
     * @alias SplFileObject::fgets
     */
    public function getCurrentLine() {}

    /** @implementation-alias SplFileObject::fgets */
    public function __toString(): string {}
}

class SplTempFileObject extends SplFileObject
{
    public function __construct(int $maxMemory = 2 * 1024 * 1024) {}
}