Привет.
Есть вот такой код
$parentModel = $this->getDataSource()->getModel()->chainedParentObject();
Беда в том, что phpstorm не может подсказать методы, потому что не может определить тип возвращаемых значений. Вернее может, но не полностью.
Например $this->getDataSource() вернет обьект реализующий DataSourceInterface который имеет некоторые методы, но классы реализующие этот интерфейс добавляют так же и свои. Естественно нельзя указать, что getDataSource() возвращает конкретный тип. И так далее по цепочке.
getModel() возвращает подклассы ActiveRecord (Yii), но chainedParentObject() является подклассом AR и естественно имеет доп. методы и при наборе getModel()-> автокомплит подсказывает только методы AR. Понимаю, что скорее всего невозможно определять динамический тип, но может всё таки есть какой-то трюк?