а это вообще другое тоже) это ограничения на дженерики, там нельзя логику писать об инстансе, только можно анализировать какую-то информацию о типе - от кого он наследуется, что реализует, есть ли у него какие-то мемберы
вообще-то он врет, пустой тупл есть - () он же unit. туплы не подходят по типу не только из-за разных типов элементов, но и из-за разных длин. Пустой кортеж особый, элементов не имеет, поэтому оптимируется в рантайме в null, но это уже детали
вообще-то он врет, пустой тупл есть - () он же unit. туплы не подходят по типу не только из-за разных типов элементов, но и из-за разных длин. Пустой кортеж особый, элементов не имеет, поэтому оптимируется в рантайме в null, но это уже детали
() - это не "особый пустой" тупл, а unit. У тупла нету пустых конструкторов. Это разные вещи.