<?php
 
   class AClass
 
   {
 
      function someAMethod() {}
 
   }
 
   
 
  interface Test_Interface
 
  {
 
     /**
 
     * @return AClass
 
     */
 
     function someTestMethod();
 
   }
 
   
 
   /**
 
   * @var Test_Interface
 
   */
 
   $x = something();
 
   $x->someTestMethod()->|
 
   // Failed to find "Test_Interface::someTestMethod()" method
 
?> | 	
 
The IDE finds out the type of $x, but in strange way --- when I type $x-> and press ctrl+space I see the method names (from interface) but they don't look like methods at all in the dropdown list - there is only method name, without brackets, arguments, access - strange.