Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:49519 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 97311 invoked from network); 25 Aug 2010 16:30:54 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 25 Aug 2010 16:30:54 -0000 Authentication-Results: pb1.pair.com header.from=kontakt@beberlei.de; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=kontakt@beberlei.de; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain beberlei.de from 87.230.78.165 cause and error) X-PHP-List-Original-Sender: kontakt@beberlei.de X-Host-Fingerprint: 87.230.78.165 www.mysqlusers.de Linux 2.5 (sometimes 2.4) (4) Received: from [87.230.78.165] ([87.230.78.165:55972] helo=beberlei.de) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 30/EA-43011-C35457C4 for ; Wed, 25 Aug 2010 12:30:54 -0400 Received: from [192.168.1.34] (koln-4d0b00a2.pool.mediaWays.net [77.11.0.162]) by beberlei.de (Postfix) with ESMTPSA id 82A961DA801E; Wed, 25 Aug 2010 18:30:49 +0200 (CEST) To: Pierrick Charron Cc: internals@lists.php.net In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Date: Wed, 25 Aug 2010 18:30:48 +0200 Message-ID: <1282753848.3491.25.camel@benny-pc> Mime-Version: 1.0 X-Mailer: Evolution 2.28.3 Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] Annotation RFC + Patch From: kontakt@beberlei.de (Benjamin Eberlei) The inheritance support of annotations only affects classes am I right? I would get rid of this stuff completely, its rather complicated and simplify to only returning only the annotations specified on the reflected class. As I said before, no-one hinders you from implementing arbitrary complex user-land annotation frameworks on top of a very simple annotations implementation that returns simple arrays only. For inheritance like features the user could walk the inheritance graph from the specified child to its last super-class and array_merge() all the annotations it needs. greetings, Benjamin On Wed, 2010-08-25 at 11:59 -0400, Pierrick Charron wrote: > One of the advantage of classes vs array is that you have to create > the class and define its structure and behaviour before using it. > For example you cannot do with Array something like the [Inherited] annotation : > > [Inherited] > class SampleAnnotation extends ReflectionAnnotation {} > > How could you define that the SampleAnnotation annotation is Inherited > or not if you define it on the fly ? > > Pierrick > > 2010/8/25 Benjamin Eberlei : > > > > Hi Pierrick, > > > > Awesome RFC! :) I think this is a really useful addition on many levels. > > > > We had a chat about this yesterday, i just wanted to throw it into the > > discussion here again: > > > > I think a solution where "->getAnnotations()" returns only an array of the > > annotations data is simpler to use. > > Validation of the data would have to be done by the user in this case, but > > you could of course > > add a layer in PHP that transforms this data into an object structure. > > > > greetings, > > Benjamin > > > > On Wed, 25 Aug 2010 08:56:53 -0400, Pierrick Charron > > > > wrote: > >> Hello PHP Internals! > >> > >> Recently a RFC was included on the PHP Wiki[1]. > >> I know there've been a lot of buzz related to PHP 5.4, but this is not > >> the subject of this email. > >> > >> I'm here to propose a new feature in PHP: Annotations. > >> A patch is already available with 54 tests for the moment[2]. > >> > >> I worked together with Guilherme Blanco to make this support happen in > >> a fresh PHP SVN trunk checkout. > >> Please review, comment and provide feedback! I think it's a very > >> useful support and may benefit users a lot. > >> > >> [1] http://wiki.php.net/rfc/annotations > >> [2] http://www.adoy.net/php/Annotations.diff > >> > >> Regards, > >> Pierrick > >> > >> (Sorry if you receive this message twice but it looks like I have > >> problems with the ML) > > > > -- > > PHP Internals - PHP Runtime Development Mailing List > > To unsubscribe, visit: http://www.php.net/unsub.php > > > > >