Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Extending PDT"

(Purpose)
m (Code Assist)
Line 4: Line 4:
 
== Extending ==
 
== Extending ==
 
=== Code Assist ===
 
=== Code Assist ===
 +
==== Type inference hinting ====
 +
Suppose your framework uses the following language structure for object instantiation:
 +
 +
  $myObject = ClassRegistry::init('MyObject');
 +
 +
In this case PDT type inference engine is unable to detect the type of $myObject variable, so we'll have to add a specific rule that helps him.
 +
 +
org.eclipse.php.core.goalEvaluatorFactories extension point allows to provide additional rules to the PHP type inference engine. For example:
 +
 
=== CTRL + click ===
 
=== CTRL + click ===
 
=== Outline and PHP Explorer ===
 
=== Outline and PHP Explorer ===

Revision as of 04:42, 30 November 2009

Purpose

There are different purposes for extending PDT. One of them is adding support for specific PHP framework to the IDE features like: Code Assist, Navigation (CTRL + click), Presentation (Outline, PHP Explorer). In this document we'll describe how to achieve these goals using PDT extension points.

Extending

Code Assist

Type inference hinting

Suppose your framework uses the following language structure for object instantiation:

 $myObject = ClassRegistry::init('MyObject');

In this case PDT type inference engine is unable to detect the type of $myObject variable, so we'll have to add a specific rule that helps him.

org.eclipse.php.core.goalEvaluatorFactories extension point allows to provide additional rules to the PHP type inference engine. For example:

CTRL + click

Outline and PHP Explorer

Back to the top