On Mar 13 17:50:33, Marcelo Gornstein wrote:
> Hello All,
> 
> I'm new to this list, so please excuse me if this subject was already
> discussed, or proposed.

Hi,

it has already been discussed with length. Please take a look at:

http://wiki.php.net/rfc/annotations

it would be more productive if you explain in what ways your proposal
differs from the one above, and why that should be so.

Best,

> 
> I've made an experimental patch to ZendEngine/PHP (5.3.5) to allow
> native annotations (without doc comments), using the token @@ (the @
> was already taken). It allows 0 or more annotations (with 0 or more
> arguments each one) for classes, properties, methods, and arguments
> for methods, like:
> 
> @@Annotation(key="value1")
> class A {
>     @@Annotation(key="value1")
>     private $property;
> 
>     @@Annotation(key="value1")
>     private function aMethod(@@Annotation(key="value1") @@Annotation2 $a, $b) 
> {
>         ...
>     }
> }
> 
> The patch can be found at: https://github.com/marcelog/AnoForPHP.
> 
> The annotations and their optional arguments can be retrieved via the
> getAnnotations() method of ReflectionClass, ReflectionMethod,
> ReflectionParameter, and ReflectionProperty.
> 
> I plan to extend this patch with some extended functionality, like
> having PHP instantiate a given class for the given annotation. By
> using convention instead of configuration, the name of the annotation
> is the name of the class, which should also extend some PHP base
> class, like "Annotation".
> 
> I'm basically looking for comments on the patch and the functionality,
> since I'm new to the ZendEngine as well.
> 
> Again, I'm sorry if this post should not go here or there is not
> interest in such a feature in the language itself. Also, if I missed
> something in the code of the patch, because it's more like a
> proof-of-concept than a final formal proposal.
> 
> Regards!
> 
> 
> --
> // I don't sleep. I coffee.
> "Make everything as simple as possible, but not simpler." -- Albert Einstein
> "The class object inherits from Chuck Norris."
> "Chuck Norris can divide by zero and can unit test an entire
> application with a single assert."
> "There’s a lot of work happening behind the scenes, courtesy of the
> Spring AOP framework"
> "Why do I have this nagging hunch that you have no idea what you're doing?"
> "Any society that would give up a little liberty to gain a little
> security will deserve neither and lose both" - Benjamin Franklin
> 
> --
> PHP Internals - PHP Runtime Development Mailing List
> To unsubscribe, visit: http://www.php.net/unsub.php
> 

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to