[ESS-Model] syntaxe étrange pour moi !
Bonjour,
J'ai récupéré les sources de ESS Model depuis: https://essmodel.sourceforge.net/ car j'ai envie de les remettre au gout du jour (voir de le migrer sous Firemonkey).
A la première compilation, je tombe sur une syntaxe étrange pour moi dans le fichier uModel.pas !
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
interface
type
function AllClassesPackage : TAbstractPackage;
implementation
//Unique Flag-instance, if Integrator.CurrentEntity=AllClassesPackage then show all classes
function AllClassesPackage : TAbstractPackage;
const
_AllClassesPackage : TAbstractPackage = nil;
begin
if _AllClassesPackage=nil then
_AllClassesPackage := TAbstractPackage.Create(nil);
Result := _AllClassesPackage;
end; |
Je ne connaissait pas ce type de syntaxe est visiblement les dernières versions de Delphi, non plus !
J'ai testé ceci mais, j'ai l'impression que cela ne réagit pas comme la solution l'attends !
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
interface
type
function AllClassesPackage : TAbstractPackage;
implementation
var
_AllClassesPackage: TAbstractPackage = nil;
//Unique Flag-instance, if Integrator.CurrentEntity=AllClassesPackage then show all classes
function AllClassesPackage: TAbstractPackage;
begin
if _AllClassesPackage = nil then
_AllClassesPackage := TAbstractPackage.Create(nil);
Result := _AllClassesPackage;
end; |
Ce qui fait que je me demande par quoi la remplacer pour garder la logique sous-jacente, auriez-vous une idée ?