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 );

Un helper se declare avec la syntaxe

type
   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;