On Fri, 29 May 2020, Ryan Joseph via fpc-pascal wrote:

In the example below "callback" is assigned to a method of "obj", but is it possible to get the 
class back from the variable? In the pseudo code I would expect .GetClass to return "obj". I think "of 
object" must be a record which keep both the class and method pointer but I don't know how to access it.


 type TCallback = procedure of object;
 var
   callback: TCallback;
   obj: TObject;
 begin
   callback := obj.SomeMethod;

   // get the class which callback is assigned to
   if callback.GetClass = XXX then

I think what you're looking for is:

if TMethod(CallBack).Data=XXX then

Michael.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to