[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [aspectj-users] Problems with Enum
|
I suspect you should be using AjASTVisitor as the superclass if you
intend to process AspectJ code eventually. Be aware that the AspectJ
AST support is not complete - we are accepting contributions from
anyone who wants to fill in missing pieces. I'm surprised enum isn't
working for you though, I would have imagined it is merely the AJ
constructs that are not visited correctly.
On 28/11/2007, Wojto <jestem.wojtek@xxxxxxxxxx> wrote:
> Hello everybody! I'm new here so I find it nice to say hello in the very
> beginning :-)
>
> And now to the point... I'm trying to write a simple mertic-counting
> tool. I decided to use aspectj's AST. Currently I'm trying to make out
> the api of the ast (as in eclipse I find it tricky). Everything works
> fine for classes but not for enum's. My code looks like this:
>
> import java.util.ArrayList;
>
> import org.aspectj.org.eclipse.jdt.core.dom.ASTVisitor;
> import org.aspectj.org.eclipse.jdt.core.dom.AnonymousClassDeclaration;
> import org.aspectj.org.eclipse.jdt.core.dom.CompilationUnit;
> import org.aspectj.org.eclipse.jdt.core.dom.EnumDeclaration;
> import org.aspectj.org.eclipse.jdt.core.dom.MethodDeclaration;
>
> import pl.wirp.user23.logic.metrics.beans.MetricResult;
>
> public class NLOCVisitor extends ASTVisitor {
>
> private ArrayList<MetricResult> result = new ArrayList<MetricResult>();
>
> public ArrayList<MetricResult> getResult() {
> return result;
> }
>
> ......
>
> @Override
> public boolean visit(EnumDeclaration ed) {
> System.out.println(ed.toString());
> return true;
> }
>
> @Override
> public boolean visit(AnonymousClassDeclaration acd) {
> System.out.println(acd);
> return true;
> }
>
> ...
> }
>
> I want (by now) write the source of my enum on standard out. Similar
> code for classes works fine, but for enums nothing happens. Methodes
> aren't even invoked.
> My enum class looks like this:
> public enum BasicEnum {
> A = 1, B = 2, C = 3;
> public int getNumberOfEnumerators(){
> return 3;
> }
> }
>
> so it's really simple.
> I would appreciate any help. Thanks!
> Wojtek
>
> ----------------------------------------------------------------------
> "Kup bilet na najlepsze zawody Freestyle Motocross - DIVERSE Night of
> the Jumps!" http://link.interia.pl/f1c5f
>
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>