On Thu, 16 Sep 2010 21:56:04 +0100, Chad Fulton <chadful...@gmail.com>
wrote:
Based on comments from the annotations thread, I have created a
docBlock parser RFC at http://wiki.php.net/rfc/docblockparser
This RFC does not deal with annotations per se, but only with the idea
of adding a function to the Reflection extension which would parse
docBlocks according to a set docBlock syntax into a simple associative
array containing three elements: short description, long description,
and an array of tags.
This is only meant to aid meta-data retrieval for classes and does not
automatically instantiate anything objects.
Pointless.
Well, this will maybe speedup and standardize the usage of doc comments,
but it's very far from what we could do with real annotations.
By real annotations, I mean something the engine would recognize and that
we could use in the future to implement AOP functionality with annotations
or to implement other new features in the future, e.g.:
class A {
@ReadOnly
public $var;
@PropertyGetter("virtualPropertyName")
public function baz() { }
@ClassInvariant
public static function bar() { }
@InstanceInvariant
public function foo() { }
/**
* A closure that could be called as if it were a non-static method
* and which would be automatically rebound.
* @var Closure
*/
@MethodClosure("staticMethod" => false, "rebind" => true)
public static $clos;
@Before("self::whatever", instance=true) /* Or @After, or @Around */
@Log("entering foobar") /* user-defined specialization of Before */
@Precondition(...)
public function foobar() {}
}
The current implementation would not allow any of this, but at least it
opened way. A doc comment parser...
--
Gustavo Lopes
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php