forked from JetBrains/phpstorm-stubs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCore_c.php
641 lines (560 loc) · 19.7 KB
/
Core_c.php
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
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
<?php
// Start of Core v.5.3.6-13ubuntu3.2
/**
* Created by typecasting to object.
* @link https://php.net/manual/en/reserved.classes.php
*/
class stdClass {
}
/**
* @link https://wiki.php.net/rfc/iterable
*/
interface iterable {}
/**
* Interface to detect if a class is traversable using foreach.
* Abstract base interface that cannot be implemented alone.
* Instead it must be implemented by either {@see IteratorAggregate} or {@see Iterator}.
*
* @link https://php.net/manual/en/class.traversable.php
*/
interface Traversable extends iterable {
}
/**
* Interface to create an external Iterator.
* @link https://php.net/manual/en/class.iteratoraggregate.php
*/
interface IteratorAggregate extends Traversable {
/**
* Retrieve an external iterator
* @link https://php.net/manual/en/iteratoraggregate.getiterator.php
* @return Traversable An instance of an object implementing <b>Iterator</b> or
* <b>Traversable</b>
* @since 5.0.0
*/
public function getIterator();
}
/**
* Interface for external iterators or objects that can be iterated
* themselves internally.
* @link https://php.net/manual/en/class.iterator.php
*/
interface Iterator extends Traversable {
/**
* Return the current element
* @link https://php.net/manual/en/iterator.current.php
* @return mixed Can return any type.
* @since 5.0.0
*/
public function current();
/**
* Move forward to next element
* @link https://php.net/manual/en/iterator.next.php
* @return void Any returned value is ignored.
* @since 5.0.0
*/
public function next();
/**
* Return the key of the current element
* @link https://php.net/manual/en/iterator.key.php
* @return mixed scalar on success, or null on failure.
* @since 5.0.0
*/
public function key();
/**
* Checks if current position is valid
* @link https://php.net/manual/en/iterator.valid.php
* @return bool The return value will be casted to boolean and then evaluated.
* Returns true on success or false on failure.
* @since 5.0.0
*/
public function valid();
/**
* Rewind the Iterator to the first element
* @link https://php.net/manual/en/iterator.rewind.php
* @return void Any returned value is ignored.
* @since 5.0.0
*/
public function rewind();
}
/**
* Interface to provide accessing objects as arrays.
* @link https://php.net/manual/en/class.arrayaccess.php
*/
interface ArrayAccess {
/**
* Whether a offset exists
* @link https://php.net/manual/en/arrayaccess.offsetexists.php
* @param mixed $offset <p>
* An offset to check for.
* </p>
* @return bool true on success or false on failure.
* </p>
* <p>
* The return value will be casted to boolean if non-boolean was returned.
* @since 5.0.0
*/
public function offsetExists($offset);
/**
* Offset to retrieve
* @link https://php.net/manual/en/arrayaccess.offsetget.php
* @param mixed $offset <p>
* The offset to retrieve.
* </p>
* @return mixed Can return all value types.
* @since 5.0.0
*/
public function offsetGet($offset);
/**
* Offset to set
* @link https://php.net/manual/en/arrayaccess.offsetset.php
* @param mixed $offset <p>
* The offset to assign the value to.
* </p>
* @param mixed $value <p>
* The value to set.
* </p>
* @return void
* @since 5.0.0
*/
public function offsetSet($offset, $value);
/**
* Offset to unset
* @link https://php.net/manual/en/arrayaccess.offsetunset.php
* @param mixed $offset <p>
* The offset to unset.
* </p>
* @return void
* @since 5.0.0
*/
public function offsetUnset($offset);
}
/**
* Interface for customized serializing.
* @link https://php.net/manual/en/class.serializable.php
*/
interface Serializable {
/**
* String representation of object
* @link https://php.net/manual/en/serializable.serialize.php
* @return string the string representation of the object or null
* @since 5.1.0
*/
public function serialize();
/**
* Constructs the object
* @link https://php.net/manual/en/serializable.unserialize.php
* @param string $serialized <p>
* The string representation of the object.
* </p>
* @return void
* @since 5.1.0
*/
public function unserialize($serialized);
}
/**
* Throwable is the base interface for any object that can be thrown via a throw statement in PHP 7,
* including Error and Exception.
* @link https://php.net/manual/en/class.throwable.php
* @since 7.0
*/
interface Throwable
{
/**
* Gets the message
* @link https://php.net/manual/en/throwable.getmessage.php
* @return string
* @since 7.0
*/
public function getMessage();
/**
* Gets the exception code
* @link https://php.net/manual/en/throwable.getcode.php
* @return int <p>
* Returns the exception code as integer in
* {@see Exception} but possibly as other type in
* {@see Exception} descendants (for example as
* string in {@see PDOException}).
* </p>
* @since 7.0
*/
public function getCode();
/**
* Gets the file in which the exception occurred
* @link https://php.net/manual/en/throwable.getfile.php
* @return string Returns the name of the file from which the object was thrown.
* @since 7.0
*/
public function getFile();
/**
* Gets the line on which the object was instantiated
* @link https://php.net/manual/en/throwable.getline.php
* @return int Returns the line number where the thrown object was instantiated.
* @since 7.0
*/
public function getLine();
/**
* Gets the stack trace
* @link https://php.net/manual/en/throwable.gettrace.php
* @return array <p>
* Returns the stack trace as an array in the same format as
* {@see debug_backtrace()}.
* </p>
* @since 7.0
*/
public function getTrace();
/**
* Gets the stack trace as a string
* @link https://php.net/manual/en/throwable.gettraceasstring.php
* @return string Returns the stack trace as a string.
* @since 7.0
*/
public function getTraceAsString();
/**
* Returns the previous Throwable
* @link https://php.net/manual/en/throwable.getprevious.php
* @return Throwable Returns the previous {@see Throwable} if available, or <b>NULL</b> otherwise.
* @since 7.0
*/
public function getPrevious();
/**
* Gets a string representation of the thrown object
* @link https://php.net/manual/en/throwable.tostring.php
* @return string <p>Returns the string representation of the thrown object.</p>
* @since 7.0
*/
public function __toString();
}
/**
* Exception is the base class for
* all Exceptions.
* @link https://php.net/manual/en/class.exception.php
*/
class Exception implements Throwable {
protected $message;
protected $code;
protected $file;
protected $line;
/**
* Clone the exception
* Tries to clone the Exception, which results in Fatal error.
* @link https://php.net/manual/en/exception.clone.php
* @return void
* @since 5.1.0
*/
final private function __clone() { }
/**
* Construct the exception. Note: The message is NOT binary safe.
* @link https://php.net/manual/en/exception.construct.php
* @param string $message [optional] The Exception message to throw.
* @param int $code [optional] The Exception code.
* @param Throwable $previous [optional] The previous throwable used for the exception chaining.
* @since 5.1.0
*/
public function __construct($message = "", $code = 0, Throwable $previous = null) { }
/**
* Gets the Exception message
* @link https://php.net/manual/en/exception.getmessage.php
* @return string the Exception message as a string.
* @since 5.1.0
*/
final public function getMessage() { }
/**
* Gets the Exception code
* @link https://php.net/manual/en/exception.getcode.php
* @return mixed|int the exception code as integer in
* <b>Exception</b> but possibly as other type in
* <b>Exception</b> descendants (for example as
* string in <b>PDOException</b>).
* @since 5.1.0
*/
final public function getCode() { }
/**
* Gets the file in which the exception occurred
* @link https://php.net/manual/en/exception.getfile.php
* @return string the filename in which the exception was created.
* @since 5.1.0
*/
final public function getFile() { }
/**
* Gets the line in which the exception occurred
* @link https://php.net/manual/en/exception.getline.php
* @return int the line number where the exception was created.
* @since 5.1.0
*/
final public function getLine() { }
/**
* Gets the stack trace
* @link https://php.net/manual/en/exception.gettrace.php
* @return array the Exception stack trace as an array.
* @since 5.1.0
*/
final public function getTrace() { }
/**
* Returns previous Exception
* @link https://php.net/manual/en/exception.getprevious.php
* @return Exception the previous <b>Exception</b> if available
* or null otherwise.
* @since 5.3.0
*/
final public function getPrevious() { }
/**
* Gets the stack trace as a string
* @link https://php.net/manual/en/exception.gettraceasstring.php
* @return string the Exception stack trace as a string.
* @since 5.1.0
*/
final public function getTraceAsString() { }
/**
* String representation of the exception
* @link https://php.net/manual/en/exception.tostring.php
* @return string the string representation of the exception.
* @since 5.1.0
*/
public function __toString() { }
public function __wakeup() { }
}
/**
* Error is the base class for all internal PHP error exceptions.
* @link https://php.net/manual/en/class.error.php
* @since 7.0
*/
class Error implements Throwable {
/**
* Construct the error object.
* @link https://php.net/manual/en/error.construct.php
* @param string $message [optional] The Error message to throw.
* @param int $code [optional] The Error code.
* @param Throwable $previous [optional] The previous throwable used for the exception chaining.
*/
public function __construct($message = "", $code = 0, Throwable $previous = null)
{
}
/***
* Gets the message
* @link https://php.net/manual/en/throwable.getmessage.php
* @return string
* @since 7.0
*/
public final function getMessage()
{
}
/**
* Gets the exception code
* @link https://php.net/manual/en/throwable.getcode.php
* @return int <p>
* Returns the exception code as integer in
* {@see Exception} but possibly as other type in
* {@see Exception} descendants (for example as
* string in {@see PDOException}).
* </p>
* @since 7.0
*/
public final function getCode(){}
/**
* Gets the file in which the exception occurred
* @link https://php.net/manual/en/throwable.getfile.php
* @return string Returns the name of the file from which the object was thrown.
* @since 7.0
*/
public final function getFile(){}
/**
* Gets the line on which the object was instantiated
* @link https://php.net/manual/en/throwable.getline.php
* @return int Returns the line number where the thrown object was instantiated.
* @since 7.0
*/
public final function getLine(){}
/**
* Gets the stack trace
* @link https://php.net/manual/en/throwable.gettrace.php
* @return array <p>
* Returns the stack trace as an array in the same format as
* {@see debug_backtrace()}.
* </p>
* @since 7.0
*/
public final function getTrace(){}
/**
* Gets the stack trace as a string
* @link https://php.net/manual/en/throwable.gettraceasstring.php
* @return string Returns the stack trace as a string.
* @since 7.0
*/
public final function getTraceAsString(){}
/**
* Returns the previous Throwable
* @link https://php.net/manual/en/throwable.getprevious.php
* @return Throwable Returns the previous {@see Throwable} if available, or <b>NULL</b> otherwise.
* @since 7.0
*/
public final function getPrevious(){}
/**
* Gets a string representation of the thrown object
* @link https://php.net/manual/en/throwable.tostring.php
* @return string <p>Returns the string representation of the thrown object.</p>
* @since 7.0
*/
public function __toString(){}
/**
* Clone the error
* Error can not be clone, so this method results in fatal error.
* @return void
* @link https://php.net/manual/en/error.clone.php
*/
private final function __clone(){}
public function __wakeup(){}
}
/**
* There are three scenarios where a TypeError may be thrown.
* The first is where the argument type being passed to a function does not match its corresponding declared
* parameter type. The second is where a value being returned from a function does not match the declared function return type. The third is where an
* invalid number of arguments are passed to a built-in PHP function (strict mode only).
* @link https://php.net/manual/en/class.typeerror.php
* @since 7.0
*/
class TypeError extends Error {
}
/**
* ParseError is thrown when an error occurs while parsing PHP code, such as when {@see eval()} is called.
* @link https://php.net/manual/en/class.parseerror.php
* @since 7.0
*/
class ParseError extends CompileError {
}
/**
* ArgumentCountError is thrown when too few arguments are passed to a user
* defined routine.
*
* @since 7.1
* @see https://php.net/migration71.incompatible#migration71.incompatible.too-few-arguments-exception
*/
class ArgumentCountError extends TypeError {}
/**
* ArithmeticError is thrown when an error occurs while performing mathematical operations.
* In PHP 7.0, these errors include attempting to perform a bitshift by a negative amount,
* and any call to {@see intdiv()} that would result in a value outside the possible bounds of an integer.
* @link https://php.net/manual/en/class.arithmeticerror.php
* @since 7.0
*/
class ArithmeticError extends Error {
}
/**
* Class CompileError
* @link https://secure.php.net/manual/en/class.compileerror.php
* @since 7.3
*/
class CompileError extends Error {
}
/**
* DivisionByZeroError is thrown when an attempt is made to divide a number by zero.
* @link https://php.net/manual/en/class.divisionbyzeroerror.php
* @since 7.0
*/
class DivisionByZeroError extends ArithmeticError {
}
/**
* An Error Exception.
* @link https://php.net/manual/en/class.errorexception.php
*/
class ErrorException extends Exception {
protected $severity;
/**
* Constructs the exception
* @link https://php.net/manual/en/errorexception.construct.php
* @param string $message [optional] The Exception message to throw.
* @param int $code [optional] The Exception code.
* @param int $severity [optional] The severity level of the exception.
* @param string $filename [optional] The filename where the exception is thrown.
* @param int $lineno [optional] The line number where the exception is thrown.
* @param Exception $previous [optional] The previous exception used for the exception chaining.
* @since 5.1.0
*/
public function __construct($message = "", $code = 0, $severity = 1, $filename = __FILE__, $lineno = __LINE__, $previous = null) { }
/**
* Gets the exception severity
* @link https://php.net/manual/en/errorexception.getseverity.php
* @return int the severity level of the exception.
* @since 5.1.0
*/
final public function getSeverity() { }
}
/**
* Class used to represent anonymous functions.
* <p>Anonymous functions, implemented in PHP 5.3, yield objects of this type.
* This fact used to be considered an implementation detail, but it can now be relied upon.
* Starting with PHP 5.4, this class has methods that allow further control of the anonymous function after it has been created.
* <p>Besides the methods listed here, this class also has an __invoke method.
* This is for consistency with other classes that implement calling magic, as this method is not used for calling the function.
* @link https://secure.php.net/manual/en/class.closure.php
*/
final class Closure {
/**
* This method exists only to disallow instantiation of the Closure class.
* Objects of this class are created in the fashion described on the anonymous functions page.
* @link https://secure.php.net/manual/en/closure.construct.php
*/
private function __construct() { }
/**
* This is for consistency with other classes that implement calling magic,
* as this method is not used for calling the function.
* @param mixed $_ [optional]
* @return mixed
* @link https://secure.php.net/manual/en/class.closure.php
*/
public function __invoke(...$_) { }
/**
* Duplicates the closure with a new bound object and class scope
* @link https://secure.php.net/manual/en/closure.bindto.php
* @param object $newthis The object to which the given anonymous function should be bound, or NULL for the closure to be unbound.
* @param mixed $newscope The class scope to which associate the closure is to be associated, or 'static' to keep the current one.
* If an object is given, the type of the object will be used instead.
* This determines the visibility of protected and private methods of the bound object.
* @return Closure Returns the newly created Closure object or FALSE on failure
*/
function bindTo($newthis, $newscope = 'static') { }
/**
* This method is a static version of Closure::bindTo().
* See the documentation of that method for more information.
* @static
* @link https://secure.php.net/manual/en/closure.bind.php
* @param Closure $closure The anonymous functions to bind.
* @param object $newthis The object to which the given anonymous function should be bound, or NULL for the closure to be unbound.
* @param mixed $newscope The class scope to which associate the closure is to be associated, or 'static' to keep the current one.
* If an object is given, the type of the object will be used instead.
* This determines the visibility of protected and private methods of the bound object.
* @return Closure Returns the newly created Closure object or FALSE on failure
*/
static function bind(Closure $closure, $newthis, $newscope = 'static') { }
/**
* Temporarily binds the closure to newthis, and calls it with any given parameters.
* @link https://php.net/manual/en/closure.call.php
* @param object $newThis The object to bind the closure to for the duration of the call.
* @param mixed $parameters [optional] Zero or more parameters, which will be given as parameters to the closure.
* @return mixed
* @since 7.0
*/
function call ($newthis, ...$parameters) {}
/**
* @param callable $callable
* @return Closure
* @since 7.1
*/
public static function fromCallable (callable $callable) {}
}
/**
* Classes implementing <b>Countable</b> can be used with the
* <b>count</b> function.
* @link https://php.net/manual/en/class.countable.php
*/
interface Countable {
/**
* Count elements of an object
* @link https://php.net/manual/en/countable.count.php
* @return int The custom count as an integer.
* </p>
* <p>
* The return value is cast to an integer.
* @since 5.1.0
*/
public function count();
}