Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:103222 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 68937 invoked from network); 21 Sep 2018 19:47:59 -0000 Received: from unknown (HELO mout.gmx.net) (212.227.17.20) by pb1.pair.com with SMTP; 21 Sep 2018 19:47:59 -0000 Received: from [192.168.2.136] ([91.8.166.159]) by mail.gmx.com (mrgmx103 [212.227.17.168]) with ESMTPSA (Nemesis) id 0Lkwpt-1fSwcY2eaz-00aivY; Fri, 21 Sep 2018 17:54:51 +0200 To: Rasmus Schultz , lester@lsces.co.uk Cc: PHP internals References: Message-ID: <89971952-8ee1-4f16-b821-cb0de71e0eb7@gmx.de> Date: Fri, 21 Sep 2018 17:54:54 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: de-DE Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:taJVmneMxCF+K2/ac26yjhA68ICLToTiBgPmcmLDHH+gmMUEVkD t/EHP4FLg7pTGZZYcQzAex61kp0HMKwoMk855+7gWQVwaGRfK9nZKxaxDghg/E96wDuKi78 PlR8e5xf595QK2egby2uM1sKpNSSRyXQY3uVImhF1zibkS5GiFcPy4wJRgPDkWzBChDg7wi bgfO3RftQGe6jpTCnh3BQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:vnGNFw7QZZg=:3LopZnPZMc1ydmbuEm0q9y Lud8zMvUQPPzgl9GgrSQ+pAEE4CDi0Db2LMA/aJGUufBniOOrobyOpwCdw4ExVIfYuDxrY9ED BRFW61UpTyRV3Pg76cdqOO4VUs+MVHtidvsgihtxL9BLW0uGsJ4baijQpSZARWVAlZA+DQ80x 3YPInfwiUp8+oDoeQWrh5Q8dYUz4FFq1uWnb1aENwHaCJ1/0zEwbsmhuw8OjK7NH3KKTzsOW0 FZ66He89aTNrbFQSb/AGDir/AE241Iz9YlkgJeFdNM4mYWqQdsC1LbgJvTdEJo+xLVk+h9oF2 HCr1mOgJ7iqU+Uf3VwEuXhdzRbSrABtVWesnVSTCbe8MbYTWogXI1N2nyLe2Tpt6mkvuePjle XQoL0oM7zTuaQyWA1Cw/ik1Cq3Edj5qsz9hDAB/zd1oLvGepWtfZUaIlB72QMgBHVuGjUzuFO i0IBw4OGdp94qUhK539eHdzqwhoFo392GX2iMYiGoGVIRPo+pVjigfXzA0T9KKp+UGgSzqaQX PxZfNSL2MmC+TN0gGbohvG5BKjn/xn5vgDqXZ8ukVsoO8S48Z/A5Zst/TP/fFP6T9hl6Ogb9m GJhYYgoLJEfBMb/wHlWqJaOqjp7gt+FUrAVVLvfKKw65ASC5I2Ub9S9wzw05W+09d5s0KszST XGp7mQDQuW+Dk0yJb09+6TchwrZqccU0uavTstURXadve98QXdYEkNjcyCUL688QGieMwJUe9 6BekoZsbJ308nVqaGou6cU145vBZV0AdDuK9CbgnDewbJWQE8uq9415eME1GAMPE1T1FQrDDm fP/EpjjdfsbSGop8NKybN620wpxdEKBBeKk0YrLjWHQvXIEmvM= Subject: Re: [PHP-DEV] [RFC] [VOTE] Typed properties v2 From: cmbecker69@gmx.de ("Christoph M. Becker") On 21.09.2018 at 17:25, Rasmus Schultz wrote: > this doesn't provide *any* additional guarantees: > > class Foo { > public int $bar; > } > > $foo = new Foo(); // invalid state allowed > > $foo->bar = 123; // valid state > > $foo->bar = null; // invalid state NOT allowed?! > > [snip] > > In terms of reliability, it's actually sub-par to hand-written accessors. You have no guarantee that a declared public property even exists (regardless of the Typed Properties 2.0 RFC), because it might have been unset. And no, the property is not really NULL in this case, but rather undefined. -- Christoph M. Becker