Hi, >> %Annotation(%Email(checkMX = true));
at first I thought what for an ugly syntax. But after a time I think it is regardless of whether the % or @(from Java, which I prefer over all, if it were possible) syntax is used. It looks very similar. So I prefer the % syntax so we can use the [] for defining arrays in annotations. Is it possible to define objects from type stdClass in the form %Annotation({key: 'value'})? An other question. Is it necessary to terminate an annotation with a semicolon, like in your example? class Compiler { /** * Compile a node into plain PHP. * * @param Node $node The node to compile. */ %Annotation(%Email(checkMX = true)) %ResourceParameter(['key' => 'name', 'value' => 'annotation']) %Inject('\my\name\space\Class') %Test %Annotation({key: 'value'}) public function compile(Node $node) { } } Greetings, Christian Am 11.09.2010 02:23, schrieb Pierrick Charron: > Hi Stas, > > Annotations is a new concept in PHP (even if some framework already > use an user space implementation of them) and I think it is normal > that people will have to read a little bit about this eventually new > feature before using it. This is the same thing for traits, if you > don't know what is a trait you will not know how to use them. But once > you know the concept it's really easy to understand what is an > annotation class, parameter etc... > > Is it really the [] Syntax that you don't like for annotations ? I was > personally not against the [] array syntax and I understand that this > annotation syntax will make the future implementation of this [] array > syntax impossible. So I could change it to the syntax proposed by > Etienne in the first thread : > > %Annotation(%Email(checkMX = true)); > > I'm not against any other proposal of syntax so if you have one to > proposition do not hesitate. > > Regards, > Pierrick > > > > 2010/9/10 Stas Malyshev <smalys...@sugarcrm.com>: >> Hi! >> >>> [Validation(Email(checkMX=>true))] looks better. >> Even here it's not clear what is happening. What is "Validation", what is >> "Email", what is "checkMX" (are they all classes? or only some of them?), >> what is happening to them (are these classes being instantiated? when? what >> is passed as parameters? What is the scope of that? etc). Why can we have >> now two ways to instantiate classes, complete with mix of []s and ()s, but >> having array syntax using [] is still too complex? >> >> -- >> Stanislav Malyshev, Software Architect >> SugarCRM: http://www.sugarcrm.com/ >> (408)454-6900 ext. 227 >> >> -- >> 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