Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aspectj-dev] Question about weaving principles

Hello!

I am currently investigating on some different implementation strategies for AOP and was wondering if you could clarify a few small things for me regarding the AspectJ compiler.

First of all am I right that in the current implementation the major loop is as follows?

- over all classes
  - over all joinpoints (modulo FastMatch)
    - for each joinpoint shadow
      - if pointcut matches shadow
        - implement (weave)

If that is correct, I assume that every class that if given as input is loaded even it it is not matched by any pointcut, right?

Also I don't understand the notion of a shadowmunger 100%. Am I right that a shadowmunger represents actually the pointcut and so is an entity to implement the pointcut attached to it?

What exactly is "concretize()" good for? And briefly, how does it work?

Also: Do you have any information about where most time is spent at the moment during weaving? Is classloading, weaving or matching pointcuts the bottleneck?

Thanks a lot,
Eric

(copy to aspectj-dev)




Back to the top