Was soll denn damit überhaupt erreicht werden? Wofür wird das benötigt?
In der Regel baut man sich eine Builder-Klasse, die weiß, was dort alles rein soll und darf und die spuckt dann bei Bedarf das richtige Ergebnis aus oder meckert halt mit einer
Exception. Eine Eigenschaft
IsValid
geht natürlich auch.
Delphi-Quellcode:
TFooBuilder =
class
procedure Append( ... );
// was auch immer benötigt wird
function TryAppend( ... ) : Boolean;
// wie oben nur ohne Exception
function Build : TFoo;
function IsValid : Boolean;
function TryBuild(
out AFoo : TFoo ): Boolean;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)