rfc:readonly_properties

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
rfc:readonly_properties [2014/10/24 00:16] – both read and write ajfrfc:readonly_properties [2017/09/22 13:28] (current) – external edit 127.0.0.1
Line 1: Line 1:
 ====== PHP RFC: Readonly Properties ====== ====== PHP RFC: Readonly Properties ======
-  * Version: 0.1 +  * Version: 0.1.1 
-  * Date: 2014-10-24+  * Date: 2014-10-24 (Withdrawn 2014-11-03)
   * Author: Andrea Faulds, ajf@ajf.me   * Author: Andrea Faulds, ajf@ajf.me
-  * Status: Under Dicussion+  * Status: Withdrawn 
 +  * Discussion: http://markmail.org/message/7l3ci3sboma2nlzq
   * First Published at: http://wiki.php.net/rfc/readonly_properties   * First Published at: http://wiki.php.net/rfc/readonly_properties
  
Line 54: Line 55:
 This is proposed for the next major version of PHP, currently PHP 7. This is proposed for the next major version of PHP, currently PHP 7.
  
 +===== Future Scope =====
 +
 +Properties in interfaces are currently not supported. If they were later to be supported (perhaps with getters/setters being added), ''readonly'' could be used to avoid compelling implementing classes from making a property writeable, but not preventing them from expanding the interface to do so, e.g.:
 +
 +<code php>
 +interface Point {
 +    readonly $x, $y;
 +}
 +
 +class ImmutablePoint implements Point {
 +    public readonly $x, $y;
 +    ...
 +}
 +
 +class MutablePoint implements Point {
 +    public $x, $y;
 +    ...
 +}
 +</code>
  
 ===== RFC Impact ===== ===== RFC Impact =====
Line 97: Line 117:
  
 ===== Changelog ===== ===== Changelog =====
 +   
 +  * v0.1.1 - Added Future Scope
   * v0.1 - Creatd   * v0.1 - Creatd
rfc/readonly_properties.1414109775.txt.gz · Last modified: 2017/09/22 13:28 (external edit)