pascalabcnet/TestSuite/implicitexplicit14.pas

21 lines
360 B
ObjectPascal
Raw Permalink Normal View History

2021-03-21 15:46:54 +03:00
type
TClass = auto class
i: integer
end;
function operator implicit(i: integer): set of integer; extensionmethod;
begin
Result := [i];
end;
function operator implicit(i: integer): TClass; extensionmethod;
begin
Result := new TClass(i);
end;
begin
var s: set of integer := 2;
assert(s = [2]);
var o: TClass := 2;
assert(o.i = 2);
end.