Re: [low priority] WeakMaps with scalar keys
| From: | Gina P. Banyard | Date: | Wed, 10 Jul 2024 17:48:09 +0000 |
| Subject: | Re: [low priority] WeakMaps with scalar keys | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-124358@lists.php.net to get a copy of this message | ||
On Wednesday, 10 July 2024 at 18:34, Rob Landers <rob@bottled.codes> wrote:
> Hello internals,
>
> I know now that some of you are swamped getting ready for 8.4, so I want to be clear that this
> will be an 8.5+ thing. I am simply sending it to the list in case anyone wants to discuss it, burn
> it with fire, give it a gold star, or ignore until later.
>
> Currently, a WeakMap may only have object keys, and this logically makes a lot of sense.
> However, there are cases where you want to reference an object by a value but if the value is no
> longer referenced, no longer need it. A good example of this might be used in dependency injection
> containers, lookup tables for value objects, etc.
>
> I'd like to propose a ReverseWeakMap where the keys must be scalar, and given an object as
> the value. Once the value is no longer referenced, the key and value is removed from the
> ReverseWeakMap.
Isn't this use case already solved with WeakReferences?
https://www.php.net/manual/en/class.weakreference.php
Best regards,
Gina P. Banyard
>