rfc:callable-types

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
rfc:callable-types [2016/05/23 14:12] nikita2206rfc:callable-types [2016/05/24 05:57] – param default values nikita2206
Line 195: Line 195:
 </code> </code>
  
-Optional parameters count just like any other arguments if they are typed:+Optional parameters count just like any other parameters if they are typed:
 <code php> <code php>
 function foo(callable() $cb) { } function foo(callable() $cb) { }
Line 240: Line 240:
  
 There's no way to declare that you expect a callable that returns reference due to syntax limitations. There's no way to declare that you expect a callable that returns reference due to syntax limitations.
 +
 +==== Parameters with default values ====
 +
 +It's not possible to declare default value of a parameter in a callable prototype. Because currently PHP doesn't consider parameter's default values in signature validation (their invariance is not enforced in overridden methods in classes).
  
 ==== Syntax Choices ==== ==== Syntax Choices ====
Line 462: Line 466:
 Besides that, even with named callable types support, inlined callable types could be a way to keep the type unexposed from public API Besides that, even with named callable types support, inlined callable types could be a way to keep the type unexposed from public API
 while PHP lacks first class packages. while PHP lacks first class packages.
- 
-==== Reflection API ==== 
- 
-An extension to the reflection API will be proposed in case the RFC is approved. 
  
 ===== Votes ===== ===== Votes =====
rfc/callable-types.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1