Re: Change in type-hint representation
| From: | Dmitry Stogov | Date: | Wed, 11 Jan 2017 16:37:57 +0000 |
| Subject: | Re: Change in type-hint representation | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-97692@lists.php.net to get a copy of this message | ||
The patch was updated according to feedback: added comments, better names and encapsulation, less
magic, better code reuse, keep a free bit in zend_type for future extension.
<https://gist.github.com/dstogov/1b25079856afccf0d69f77d499cb0ab1>
<https://gist.github.com/dstogov/1b25079856afccf0d69f77d499cb0ab1>
https://gist.github.com/dstogov/1b25079856afccf0d69f77d499cb0ab1
Thanks. Dmitry.
________________________________
From: Derick Rethans <derick@php.net>
Sent: Wednesday, January 11, 2017 6:43:50 PM
To: Dmitry Stogov
Cc: PHP internals list; Bob Weinand; Joe Watkins; Zeev Suraski; Anatol Belski (ab@php.net); Nikita
Popov; Xinchen Hui
Subject: Re: [PHP-DEV] Change in type-hint representation
On Wed, 11 Jan 2017, Dmitry Stogov wrote:
> Hi,
>
>
> I propose to introduce a unified type representation (zend_type).
>
> Now it's going to be used for typing of arguments and return values.
>
> Later we should use it for properties and other things.
>
>
> m^Œj¯*âwG÷Pf<
> Mhttps://gist.github.com/dstogov/1b25079856afccf0d69f77d499cb0ab1
>
>
> The main changes are in zend_types.h and zend_compile.h, the rest is just an adoption for new
> type representation.
>
> I don't think we need RFC, because this is just an internal change that doesn't
> change behavior.
>
>
> I got the idea working on typed properties together with Bob and Joe.
>
>
> https://github.com/php/php-src/compare/master...bwoebi:typed_ref_properties
>
> I think it would be better to introduce zend_type and then continue work on typed properties.
>
>
> Any comments?
208 + if (new_arg_info[i].type > 0x3ff) {
I wouldn't use a magical constant there, but do a define of what 0x3ff
actually is.
209 + /* this is a calss name */
That's spelled "class" (not "calss").
cheers,
Derick