pascalabcnet/TestSuite/yield-where.pas

23 lines
533 B
ObjectPascal
Raw Permalink Normal View History

2022-12-17 03:04:13 +03:00
//#2760
type
t0<T,TT> = class
where T: class;
where TT: record;
end;
t1<T> = class
where T: class;
// Обязательно метод
2022-12-17 03:24:34 +03:00
function f1<TT>(o: TT): sequence of byte;
2022-12-17 03:04:13 +03:00
where TT: record;
begin
//Ошибка: Невозможно инстанцировать, так как тип T не наследован от System.Exception
new t0<T,TT>;
// Обязательно yield
yield 5;
end;
end;
begin
2022-12-17 03:24:34 +03:00
Assert(t1&<object>.Create.f1(0).Single = 5);
2022-12-17 03:04:13 +03:00
end.