On Wed, 25 Nov 2015, Sven Barth wrote:
Virtual method interceptors are not implemented, but they are planned
just
like every other Delphi compatible part of the RTTI. They require a
bit of
platform dependent support though as they'll need to deal with calling
conventions (even if it might only be one as AFAIK we only allow the
default calling convention for virtual methods...).
Sounds like the same code as for interface method RTTI can be reused.
But that will only provide half of it, because a Virtual Method Interceptor
(VMI) also needs to provide the callee while for the interface method RTTI
(or later on Invoke()) you only need to provide the necessary means to call
the function (which a VMI needs to be able to do as well, which is what I
mean "half").
Hmh. Why does it need to provide the callee ?
I thought it just meant inserting a stub in the VMT and make sure all arguments are passed correctly ?
No doubt you know better :)
Michael.
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel