Login  Register

Re: [Ann] Class meta annotations

Posted by Denis Kudriashov on Sep 26, 2017; 9:01am
URL: https://forum.world.st/Ann-Class-meta-annotations-tp4971966p4972317.html



2017-09-26 10:45 GMT+02:00 Damien Pollet <[hidden email]>:
+1 just call them class annotations. "annotation" itself already means "meta-information"

What are class properties ?

Any class has dictionary of arbitrary properties:

MyClass propertyAt: #testKey put: #testValue
 
How do annotations relate to Magritte? I'm guessing Magritte descriptions are a specific kind of annotation already, right?

For the class side descriptions yes.
But for instance side not because they looks like object specific annotations.
 

About #declaredInstances: you could do MySpecialAnnotation new in a playground… but that instance would not be attached to any class. I think the point of that query is to return the annotation instances that do come from an actual class with an actual method with the <classAnnotation> pragma.

yes.
 

BTW, what if the method with <classAnnotation> returns a different result each time?

All annotations in system are collected and cached when you first time query for any of them.
So you will work with same annotation instances until the cache will be reset.

But annotation redefines equality in the way that two annotations from same method will be equal after cache rebuilt.
 

On 26 September 2017 at 03:11, Sean P. DeNigris <[hidden email]> wrote:
Denis Kudriashov wrote
> Also I would like to thank Marcus who helps me realize this concept in
> Commander and Calypso which I start simplify with this library.

Embarrassingly, I'm not quite clear on what this all means so I'll be eager
to hear the results of the case study with Commander and Calypso!



-----
Cheers,
Sean
--
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html




--
Damien Pollet
type less, do more [ | ] http://people.untyped.org/damien.pollet