Re: Re: Changing the generated name for anon classes
| From: | Nikita Popov | Date: | Fri, 07 Feb 2020 13:35:46 +0000 |
| Subject: | Re: Re: Changing the generated name for anon classes | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-108423@lists.php.net to get a copy of this message | ||
On Thu, Feb 6, 2020 at 9:08 PM Andrea Faulds <ajf@ajf.me> wrote:
> Hi,
>
> Nikita Popov wrote:
> > Hi internals,
> >
> > Based on a suggestion by Nicolas Grekas,
> > https://github.com/php/php-src/pull/5153 changes the
> > generated name for
> > anonymous classes to include the name of the parent class or first
> > interface. So instead of just class@anonymous, you'll see something like
> > EventHandler@anonymous in error messages, for example.
> >
> > There's a minor BC break here, for code checking for a "class@anonymous"
> > prefix, which should be easy to rectify by checking for "@anonymous"
> > instead.
> >
> > What do people think about doing this change?
> >
> > Regards,
> > Nikita
> >
>
> Perhaps it would make sense to include the namespace used by the code
> which defines/instantiates the class? That might make it easier, when
> looking at a mysterious anonymous class using var_dump() deep in a big
> project perhaps, to find out where it came from.
>
That would be a possible alternative. This is similar to what we do for
closures.
As we need the generated name to be reasonably concise, we can only do one
or the other though. I don't know which one is more useful... Maybe Nicolas
wants to chime in.
Nikita