;)

On Tue, Sep 26, 2017 at 1:28 PM, Ben Coman <[email protected]> wrote:

> Shhh... The first rule of meta-club is we don't talk about meta-club.
>
>
> cheers -ben
>
>
> On Mon, Sep 25, 2017 at 11:09 PM, Guillermo Polito <
> [email protected]> wrote:
>
>> Why calling them meta-annotation and not just annotation? Annotations are
>> in general already meta :)
>>
>> On Mon, Sep 25, 2017 at 5:01 PM, Denis Kudriashov <[email protected]>
>> wrote:
>>
>>> Hi.
>>>
>>> I glad to present one class package which introduces reusable mechanism
>>> for first class annotations.
>>>
>>> The project can be found on github https://github.com/dion
>>> isiydk/ClassMetaAnnotation.
>>> And I tried to describe why it is needed in my blog
>>> http://dionisiydk.blogspot.fr/2017/09/class-meta-annotations.html.
>>>
>>> And here is overview:
>>>
>>> Every annotation should be subclass of ClassMetaAnnotation. To attach it
>>> to class you create new class side method which will return an instance of
>>> the annotation. Method should be marked with pragma #classMetaAnnotation:
>>>
>>>
>>> MyClass class>>specialAnnotation
>>>
>>> <classMetaAnnotation>
>>>
>>> ^MySpecialAnnotation new
>>>
>>>
>>> To query annotations from system there are two methods:
>>>
>>> 1) You can ask concrete annotation class for all declared instances:
>>>
>>> MySpecialAnnotation declaredInstances
>>>
>>> 2) You can ask given class for all attached annotations:
>>>
>>> MyClass metaAnnotations
>>>
>>> Every annotation includes information about annotated class and the
>>> selector of declaring method.
>>> All annotations are cached. So it is cheap to query them. There are
>>> extra messages to enumerate annotations using block.
>>>
>>> Now let's discuss it. I think it can be good addition for the Pharo 7.
>>> Especially that it is very small code.
>>>
>>> Also I would like to thank Marcus who helps me realize this concept in
>>> Commander and Calypso which I start simplify with this library.
>>>
>>> Best regards,
>>> Denis
>>>
>>
>>
>>
>> --
>>
>>
>>
>> Guille Polito
>>
>> Research Engineer
>>
>> Centre de Recherche en Informatique, Signal et Automatique de Lille
>>
>> CRIStAL - UMR 9189
>>
>> French National Center for Scientific Research - *http://www.cnrs.fr
>> <http://www.cnrs.fr>*
>>
>>
>> *Web:* *http://guillep.github.io* <http://guillep.github.io>
>>
>> *Phone: *+33 06 52 70 66 13 <+33%206%2052%2070%2066%2013>
>>
>
>

Reply via email to