Hello folks,
I think this is a big big problem. Lets see an example of some pseudo code:
class A
int value;
A()
value = 0
end
virtual void method1()
value++
end
void method2()
value++
end
virtual int getValue1()
return value
end
int getValue2()
return value
end
end
A a = AspectEngine.Wrap( new A() );
a.method1()
a.method2()
a.method1()
Console.Out.Println( a.getValue1() )
Console.Out.Println( a.getValue2() )
-- What do you think is going to be outputed?
The underlying question is: shall we ignore non-virtual methods during proxy
generation?
Cheers,
hammett
|