Re: return/parameter types for magic functions
| From: | Levi Morrison | Date: | Thu, 28 May 2015 22:36:59 +0000 |
| Subject: | Re: return/parameter types for magic functions | ||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-86436@lists.php.net to get a copy of this message | ||
On Thu, May 28, 2015 at 11:39 AM, Levi Morrison <levim@php.net> wrote:
> On Thu, May 28, 2015 at 11:38 AM, Levi Morrison <levim@php.net> wrote:
>> On Thu, May 28, 2015 at 1:06 AM, Stanislav Malyshev <smalyshev@gmail.com> wrote:
>>> Hi!
>>>
>>> Since we now allow defining return value types for functions, one can
>>> also create definition for magic functions that make no sense, such as
>>> __toString() : float or __isset() : Closure. I think we should restrict
>>> such definitions - either to types that makes sense or in case of
>>> methods that aren't supposed to return anything useful, completely. We
>>> already do this for ctors, dtors and __clone but not consistently for
>>> other magics. Also some values for parameter types make no sense.
>>
>> My original patch for return types did not allow return types for
>> ctors, dtors, and __clone. It seems you did not preserve this? In any
>> case no RFC is needed because this was outlined in the RFC:
>>
>> https://wiki.php.net/rfc/return_types#methods_which_cannot_declare_return_types
>>
>> The only one that should allow anything for now is __toString which
>> would be permitted to declare a return type of string.
>
> My apologies; I misread Dmitry's original statement. Disregard my message.
s/Dmitry/Stas/; seems I shouldn't post anything today; sorry for all
the mistakes and noise.