pascalabcnet/TestSuite/patterns/patterns-is-recursive.pas
2019-04-26 20:30:28 +03:00

20 lines
370 B
ObjectPascal

type
Pair<T1, T2> = class
_a: T1; _b: T2;
procedure Deconstruct(var a: T1; var b: T2);
begin
a := _a;
b := _b;
end;
end;
begin
var p := new Pair<integer, string>;
p._a := 1;
p._b := 'asd';
if p is Pair<integer, string>(integer(var a), string(var b)) then
Assert((a = 1) and (b = 'asd'))
else
Assert(false);
end.