Re: _call() and __callstatic() improvement
| From: | Paul Dragoonis | Date: | Fri, 10 Apr 2015 04:26:31 +0000 |
| Subject: | Re: _call() and __callstatic() improvement | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-85764@lists.php.net to get a copy of this message | ||
Hi Dmitry,
Although I recommend against the usage of __call/__callStatic from a
quality assurance perspective (part of my job), it's reassuring to know
that these methods have received more attention in terms of stability and
stack handling.
After reviewing the code I'd still like to better understand the use of the
term trampoline and when it's appropriate to
use zend_get_call_trampoline_func() over the
existing zend_get_user_call_function() approach.
Many thanks,
Paul
On Fri, Apr 10, 2015 at 12:20 AM, Dmitry Stogov <dmitry@zend.com> wrote:
> Hi,
>
> Please review the patch.
> It improves implementation of magic __call() and __callstatic() methods
> using bytecode function with trampoline instead of internal C function.
>
> https://github.com/php/php-src/pull/1234
>
> The patch is more or less obvious.
> I'm going to commit it tomorrow evening.
>
> Xinchen, you may also try to add support for Closure::invoke() (as a
> separate patch).
>
> Thanks. Dmitry.
>