On 8 juin 2011, at 11:52, Usman Bhatti wrote:

I am looking to understand what mse entities are created for associations (except inheritance i.e. invocations, access, refs) in code and how to exactly treat the duplicates. I have seen a reference of it in a bug reported for VerveineJ but I am not sure if this issue has been discussed elsewhere.

For example, 

A a;
   a = new A();
   a = new A();


The above code creates these associations (with Verveinesharp) .. 
1. An invocations to A's constructor (duplicate constructor invocation is ignored).
2. A field access to the field a (only one instance is recorded, the others are just ignored).
3. An invocation to CallAMethod (field access is already recorded so this one is not considered).
4. A reference from method M() to type A (Duplicate reference is ignored).

To me it seems like there are:
- 2 invocations to A constructor
- 2 field accesses to a
- 2 invocations to CallAMethod

There is no direct reference to class A, only indirect references through the constructor/method calls.

Please let me know if there an anomaly.


Moose-dev mailing list

Simon Denier