Recent

Author Topic: Attributes and Virtual Method Interceptors  (Read 2493 times)

tverweij

  • Guest
Attributes and Virtual Method Interceptors
« on: April 12, 2018, 09:31:17 am »
Attributes - I only found a wiki page of 2014 with a proposed syntax. (http://wiki.freepascal.org/Property_attributes)
(Delphi page: http://docwiki.embarcadero.com/RADStudio/XE6/en/Attributes_Index)

Virtual Method Interceptors - I could not find any wiki page.
(Delphi page: http://docwiki.embarcadero.com/RADStudio/XE6/en/Using_Virtual_Method_Interceptors)

Question:
Are those supported at this moment?
If not, are they planned?
« Last Edit: April 12, 2018, 05:42:53 pm by tverweij »

Thaddy

  • Hero Member
  • *****
  • Posts: 14198
  • Probably until I exterminate Putin.
Re: Attributes and Virtual Method Interceptors
« Reply #1 on: April 12, 2018, 09:41:31 am »
There is a patch submitted on the bugtracker to support attributes, but as far as I know it is not (yet) applied.
See https://bugs.freepascal.org/view.php?id=33384
A lot of work has been done on extended rtti, but I am not sure TvirtualMethodInterceptor is already implemented.
What I DO know that there are no technical limitations - in trunk - to implement it.
« Last Edit: April 12, 2018, 09:45:04 am by Thaddy »
Specialize a type, not a var.

tverweij

  • Guest
Re: Attributes and Virtual Method Interceptors
« Reply #2 on: April 12, 2018, 10:14:48 am »
Forgive me, I am new to the FPC community.

The submitted patch - does that mean it will be available within a short period?

Thaddy

  • Hero Member
  • *****
  • Posts: 14198
  • Probably until I exterminate Putin.
Re: Attributes and Virtual Method Interceptors
« Reply #3 on: April 12, 2018, 11:02:08 am »
The patch is assigned. If the developer has time and the patch is correct it will be applied. There is no time frame for it.
I tested that patch a bit and it looks OK on first glance, but I am not a developer.
If you are confident enough it is possible to test it yourself but for beginners that is not easy at all.
Specialize a type, not a var.

 

TinyPortal © 2005-2018