Helpers
redirigé depuis Class.Helper
Les helpers permettent d'étendre un type existant avec des méthodes, des propriétés, des variables et des constantes de type.
S'ils sont déclarés comme strict (Qubes 6.7) ils ne s'appliqueront qu'au type précis, et non ses alias ou ses descendants.
Par exemple la fonction IntToStr est aussi disponible sous forme d'un helper sur le type Integer, de ce fait les deux lignes de code suivantes sont équivalentes:
PrintLn( IntToStr( myInteger ) );
PrintLn( myInteger.ToString );
PrintLn( myInteger.ToString );
Un helper se declare avec la syntaxe
type
TNomDuHelper = helper for TTypeEtendre
...membres du helper...
end;
TNomDuHelper = helper for TTypeEtendre
...membres du helper...
end;
Les méthodes d'un helper auront comme paramètre Self la référence sur laquelle ils ont été invoquées, par exemple pour ajouter une methode PrintSquare au type Integer
type
TMyHelper = helper for Integer
procedure PrintSquare;
begin
PrintLn(Self*Self);
end;
end;
var i := 3;
i.PrintSquare;
TMyHelper = helper for Integer
procedure PrintSquare;
begin
PrintLn(Self*Self);
end;
end;
var i := 3;
i.PrintSquare;