вывести тип из return метода class-string<T>.
Чёт у меня не получается. Что я делаю не так? Или я не так понял. Знаю, что через template-extends можно сделать.
https://psalm.dev/r/db77834a52
а чем implements не подходит?
по идее тип определяется в момент вызова метода. Т.е. если бы class-string<T> был параметром, тогда можно было бы вывести возвращаемое значение в соответствии с типом переданного параметра 🤔
Хз. Но думаю, что можно однозначно определить тип, если он возвращается, как class-string из метода, если других методов определение не применить. Просто от Валентина слышал такое, вот решил себе заюзать, не пошло.
тогда непонятно есть 2 метода, которые возвращают что-то с Т Тогда как однозначно определить, что возвращаемое значение одного метода, зависит от другого, а не наоборот? Другими словами почему возвращаемое значение метода create должно зависеть от возвращаемого значения foo, а не возвращаемое значение foo должно зависеть от возвращаемого значения create ? 🤔
Что мешает им взаимно зависеть от друг друга, и например 1я декларация имеет приоритет.
приоритет - это уже определение зависимости, "взаимно" тут уже не подходит
Ну может быть. У меня и так было через template-extends с абстрактным классом. Думал попробовать покрасивее сделать, но походу так не работает
Обсуждают сегодня