rfc:annotations

Differences

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

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
rfc:annotations [2011/05/10 01:57]
pierrick [Patch]
rfc:annotations [2017/09/22 13:28] (current)
Line 4: Line 4:
   * Date: 2010-08-24   * Date: 2010-08-24
   * Author: Guilherme Blanco <​guilhermeblanco@hotmail.com>,​ Pierrick Charron <​pierrick@php.net>​   * Author: Guilherme Blanco <​guilhermeblanco@hotmail.com>,​ Pierrick Charron <​pierrick@php.net>​
-  * Status: ​Ready for discussion+  * Status: ​Declined
   * First Published at: http://​wiki.php.net/​rfc/​annotations   * First Published at: http://​wiki.php.net/​rfc/​annotations
  
Line 18: Line 18:
   * **Doctrine** For Object-Relational mapping, examples: @Entity, @OneToOne, @Id, etc.   * **Doctrine** For Object-Relational mapping, examples: @Entity, @OneToOne, @Id, etc.
   * **Zend Framework Server classes** Used to automate mappings for XML-RPC, SOAP, etc.   * **Zend Framework Server classes** Used to automate mappings for XML-RPC, SOAP, etc.
-  * **FLOW3** for dependency injection and validation+  * **TYPO3** for dependency injection and validation
   * **Symfony2** for routing rules   * **Symfony2** for routing rules
   * **Others** One clear thing that comes to my mind is Validation, Functional Behavior injection (which could take advantage of [[rfc:​Traits]]),​ etc. Also, any Framework could take advantage of it somehow.   * **Others** One clear thing that comes to my mind is Validation, Functional Behavior injection (which could take advantage of [[rfc:​Traits]]),​ etc. Also, any Framework could take advantage of it somehow.
Line 108: Line 108:
  
 Annotations can be defined on classes, methods, properties, functions or function parameters. Annotations can be defined on classes, methods, properties, functions or function parameters.
-ReflectionAnnotation is an interface ​the must be implemented in order to accept an Annotation definition. +ReflectionAnnotation is an interface ​that must be implemented in order to accept an Annotation definition. 
-Once this class is extended, the subclass is ready to be used an an Annotation:+Once this class is extended, the subclass is ready to be used as an Annotation:
  
 <code php> <code php>
Line 144: Line 144:
     public $target;     public $target;
     ​     ​
-    public function __construct($url,​ $target)+    public function __construct($url,​ $target ​= null)
     {     {
         $this->​url = $url;         $this->​url = $url;
Line 232: Line 232:
 </​code>​ </​code>​
  
-Please notice that multiple instantiation of same Annotation is left intentionally for discussion. It can be supported.+Please notice that multiple instantiation of same Annotation is left intentionally for discussion. It could be supported.
 Also, the inheritance of Annotations is left for discussion too. This can be done by 2 different approaches: Also, the inheritance of Annotations is left for discussion too. This can be done by 2 different approaches:
  
rfc/annotations.1304992648.txt.gz · Last modified: 2017/09/22 13:28 (external edit)