Aide à l'enregistrement Delphi pour les ensembles (et autres types simples)

Comprendre les assistants de classe (et d'enregistrement) Delphi présente une fonctionnalité du langage Delphi vous permettant d'étendre la définition d'une classe ou d'un type d'enregistrement en ajoutant des fonctions et des procédures (méthodes) aux classes et enregistrements existants sans héritage.

Dans la version Delphi XE3, les aides à l'enregistrement sont devenues plus puissantes en permettant d'étendre des types Delphi simples comme des chaînes, des entiers, des énumérations, des ensembles, etc..

L'unité System.SysUtils, de Delphi XE3, implémente un enregistrement nommé "TStringHelper" qui est en fait un assistant d'enregistrement pour les chaînes.

En utilisant Delphi XE3, vous pouvez compiler et utiliser le code suivant:

var s: chaîne; commencer s: = 'Delphi XE3'; s.Replace ('XE3', 'règles', []). ToUpper; fin; 

Pour que cela soit possible, une nouvelle construction a été réalisée dans Delphi "helper d'enregistrement pour [type simple]". Pour les chaînes, il s'agit de "type TStringHelper = helper d'enregistrement pour la chaîne". Le nom indique «aide à l'enregistrement», mais il ne s'agit pas d'étendre des enregistrements, mais plutôt d'étendre des types simples comme des chaînes, des entiers, etc..

Dans System et System.SysUtils, il existe d'autres assistants d'enregistrement prédéfinis pour les types simples, notamment: TSingleHelper, TDoubleHelper, TExtendedHelper, TGuidHelper (et quelques autres). Vous pouvez obtenir du nom quel type simple l’assistant étend.

Il existe également des aides open source pratiques, comme TDateTimeHelper.

Des énumérations? Aide pour les énumérations?

ensembles d'énumérations

Les énumérations et les ensembles traités comme des types simples peuvent également désormais (dans XE3 et au-delà) être étendus avec des fonctionnalités qu'un type d'enregistrement peut avoir: fonctions, procédures et similaires.

Voici une énumération simple ("TDay") et un assistant d'enregistrement: