================================================================================
(1) string : 'foo'
callable : false
__invoke : false
closure : false
Catchable fatal error: Argument 1 passed to Potherca\Example\TypeHints\Example::typeHintCallable() must be an instance of Potherca\Example\TypeHints\callable, string given, called in /in/jqMtg on line 60 and defined in /in/jqMtg on line 12
Output for 8.0.0 - 8.0.30, 8.1.0 - 8.1.34
================================================================================
(1) string : 'foo'
callable : false
__invoke : false
closure : false
================================================================================
(2) string : 'trim'
callable : true
__invoke : false
closure : false
================================================================================
(3) string : '\\Potherca\\Example\\TypeHints\\Example::typeHintMissing'
callable : true
__invoke : false
closure : false
Fatal error: Uncaught TypeError: method_exists(): Argument #1 ($object_or_class) must be of type object|string, array given in /in/jqMtg:54
Stack trace:
#0 /in/jqMtg(54): method_exists(Array, '__invoke')
#1 [internal function]: Potherca\Example\TypeHints\{closure}(Array, 4)
#2 /in/jqMtg(79): array_walk(Array, Object(Closure))
#3 {main}
thrown in /in/jqMtg on line 54
Output for 8.2.0 - 8.2.34, 8.3.0 - 8.3.35
================================================================================
(1) string : 'foo'
callable : false
__invoke : false
closure : false
================================================================================
(2) string : 'trim'
callable : true
__invoke : false
closure : false
================================================================================
(3) string : '\\Potherca\\Example\\TypeHints\\Example::typeHintMissing'
callable : true
__invoke : false
closure : false
Fatal error: Uncaught TypeError: method_exists(): Argument #1 ($object_or_class) must be of type object|string, array given in /in/jqMtg:54
Stack trace:
#0 /in/jqMtg(54): method_exists(Array, '__invoke')
#1 [internal function]: Potherca\Example\TypeHints\{closure}(Array, 4)
#2 /in/jqMtg(51): array_walk(Array, Object(Closure))
#3 {main}
thrown in /in/jqMtg on line 54
Output for 8.4.1 - 8.4.26, 8.5.0 - 8.5.11
================================================================================
(1) string : 'foo'
callable : false
__invoke : false
closure : false
================================================================================
(2) string : 'trim'
callable : true
__invoke : false
closure : false
================================================================================
(3) string : '\\Potherca\\Example\\TypeHints\\Example::typeHintMissing'
callable : true
__invoke : false
closure : false
Fatal error: Uncaught TypeError: method_exists(): Argument #1 ($object_or_class) must be of type object|string, array given in /in/jqMtg:54
Stack trace:
#0 /in/jqMtg(54): method_exists(Array, '__invoke')
#1 [internal function]: {closure:/in/jqMtg:51}(Array, 4)
#2 /in/jqMtg(51): array_walk(Array, Object(Closure))
#3 {main}
thrown in /in/jqMtg on line 54