Forum: Object-Pascal / Delphi-Language
by Uwe Raabe,
24. Jul 2020
Ja, das war der eigentliche Grund für das KeepContext. Die Ursache konnte ich ad hoc auch nicht ermitteln.
Als Workaround kannst du eine globale Variable vom Typ TRTTIContext anlegen. Alternativ auch als class var in einem class helper, dann braucht man auch keinen lokalen TRTTIContext mehr in FindAttribute:
type
TCustomAttributeHelper = class helper for TCustomAttribute
public class...
Forum: Object-Pascal / Delphi-Language
by Uwe Raabe,
23. Jul 2020
Dann lass den TRTTIHelper ganz weg und mach das direkt in dem FuncInfoAttribute:
type
FuncInfoAttribute = class(TCustomAttribute)
private
FGL: string;
Fn_Var: Integer;
public
constructor Create(AGL: string; An_Var: Integer);
class function FindAttribute(Source: TClass): FuncInfoAttribute;
Forum: Object-Pascal / Delphi-Language
by Uwe Raabe,
23. Jul 2020
Brauchst du die Konstanten noch für was anderes oder könnte man bei einer Lösung auf die verzichten?