On Mon, 17 Apr 2023, Máté Kocsis wrote: > Hi Everyone, > > Quite some time after mentioning the "clone with" construct the first time > (at the end of the > https://wiki.php.net/rfc/write_once_properties#run-time_behaviour section), > finally I managed to create a working implementation for this feature which > would make it possible to properly modify readonly properties > while simplifying how we write "wither" methods: > https://wiki.php.net/rfc/clone_with
| So far, all “clone with” examples introduced in the current RFC used | fixed property names which were referenced as identifiers followed by | a colon (:), while the values to be assigned were expressions. | | … | | both side of the assignment is an expression, separated by => I don't think there should be two syntaxes here. Either allow expressions on the left side of the ':' or always use '=>' and require a string on the LHS. The example already allows for using a string on the LHS in {"foo" => 1}, so I think that the most useful choice. I don't think in {PROPERTY_NAME => 1} , the LHS should be interpreted as the literal value PROPERTY_NAME, but only the value of that constant. cheers, Derick
-- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: https://www.php.net/unsub.php