Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 356824

Summary: Code assist is broken for @method and @property
Product: z_Archived Reporter: Oliver Grätz <oliver.graetz>
Component: PDTAssignee: PHP Core <php.core-inbox>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: kalin.a, zhaozhongwei
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows Vista   
Whiteboard:

Description Oliver Grätz CLA 2011-09-06 10:57:38 EDT
Build Identifier: I20110613-1736

Code assist for @method and @property should work since the release of PDT 2.1:

  http://www.eclipse.org/pdt/release-notes/pdt2_1.php
  "Improved Code Assist"...

I did not test this with PDT 2.1 so this might be regression or it never properly worked.

I am using a PDT3 milestone release (3.0.0.v20110516-1100-7V--F8NcJTTK4UE9TTJJ) and I can't properly use code completion for "virtual" methods provided by __call and documented by @method. 


Reproducible: Always

Steps to Reproduce:
Define this in the document comment of a class:

  @method int borp() borp(int $int1, int $int2) multiply two integers

This is according to the PHPDoc specification found at

http://manual.phpdoc.org/HTMLSmartyConverter/PHP/phpDocumentor/tutorial_tags.method.pkg.html

Expected behaviour would be to get completion for the two arguments. Instead of this, just "borp()" is created as the completion.

I tried various other possible syntax variations and none of them worked. Some of them produced completely wrong code, some just dumped a list of the argument names with no completion feature.
Comment 1 Oliver Grätz CLA 2011-09-13 12:46:23 EDT
The Eclipse wiki itself states how it should work on

  http://wiki.eclipse.org/MagicAccess

Today I also wanted to enable completion for properties inside a Dependency Injection Container that are implemented as properties containing closures returning objects of some type. Therefore I wanted to document the types of thesese objects with

  @property SomeType $propertyname

but all I got from the completion was the name of the property and the information "MagicPropertyType" resulting in no furhter completion for the completed property name.
Comment 2 Zhongwei Zhao CLA 2011-10-11 03:58:40 EDT
fixed in head,now the latest code works for the cases in http://wiki.eclipse.org/MagicAccess
,but the binary jar still is not available.I very am sorry for this.
Comment 3 Kalin CLA 2011-10-20 03:52:30 EDT
Verified.
Closing...
"borp(int $int1, int $int2)" is suggested in CA assist list now.
"borp()" is no longer available.