Potrzebuję użyć przeładowywania operatorów (na potrzeby zniesienia musu grupowania atrybutów i węzłów w http://4programmers.net/Forum/Spolecznosc/Projekty/273661-treestructinfodsl_-_domain_specific_language_dla_tsi_w_object_pascalu?view=unread)
Z tego co widzę, wraz z http://wiki.freepascal.org/FPC_New_Features_2.6.0#Advanced_record_syntax powinienem móc używać tego, co przy rekordach oferuje delphi (artykuł wskazany przez wiki: http://docwiki.embarcadero.com/RADStudio/Berlin/en/Operator_Overloading_(Delphi))
program ideone;
{$mode objfpc}{$H+}
type TRecord = record
class operator Implicit(Foo: Integer): TRecord;
end;
class operator TRecord.Implicit(Foo: Integer): TRecord;
begin
//...
end;
begin
end.
Niestety, nawet najprostsza próba odrzucana jest przez Fatal: Syntax error, "identifier" expected but "CLASS" found
.
Jak poprawnie przeładowywać operatory?
to zupełnie inny dialekt
- no a ja twierdzę, że to nie powinien być "zupełnie inny dialekt". ty stwierdzasz stan istniejący, ja mówię jak (uważam że) powinno być.vpiotr