169 похожих чатов

@Vudaltsov Ты на стриме по валидатору говорил, что можно псалмом

вывести тип из return метода class-string<T>.
Чёт у меня не получается. Что я делаю не так? Или я не так понял. Знаю, что через template-extends можно сделать.
https://psalm.dev/r/db77834a52

7 ответов

23 просмотра

а чем implements не подходит?

по идее тип определяется в момент вызова метода. Т.е. если бы class-string<T> был параметром, тогда можно было бы вывести возвращаемое значение в соответствии с типом переданного параметра 🤔

Vlad-Petrov Автор вопроса

Хз. Но думаю, что можно однозначно определить тип, если он возвращается, как class-string из метода, если других методов определение не применить. Просто от Валентина слышал такое, вот решил себе заюзать, не пошло.

тогда непонятно есть 2 метода, которые возвращают что-то с Т Тогда как однозначно определить, что возвращаемое значение одного метода, зависит от другого, а не наоборот? Другими словами почему возвращаемое значение метода create должно зависеть от возвращаемого значения foo, а не возвращаемое значение foo должно зависеть от возвращаемого значения create ? 🤔

Vlad-Petrov Автор вопроса

Что мешает им взаимно зависеть от друг друга, и например 1я декларация имеет приоритет.

приоритет - это уже определение зависимости, "взаимно" тут уже не подходит

Vlad-Petrov Автор вопроса

Ну может быть. У меня и так было через template-extends с абстрактным классом. Думал попробовать покрасивее сделать, но походу так не работает

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта