[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [pdt-dev] How to add code-completion for PHP Framework

Hi again,

one more question regarding code completion extensions:

Some framework classes use "components", which are declared
in a class variable, like this:

$components = array('Foo', 'Bar');

After declaring those components, the fields 'Foo' and 'Bar',
are accessible via $this->Foo and $this->Bar.

Any hint which extension point i should use to add those fields
to the code completion of classes which declare the $components
array ?


thanks!

-robert
On 10/28/2009 7:45 AM, robert@xxxxxxxxxxx wrote:
Hi Michael,

thanks a lot, this got me started, it's working fine now.

best

-robert

On Wed, 28 Oct 2009 13:08:58 +0200, Michael Spector<spektom@xxxxxxxxx>
wrote:
Hi Robert,

I think goalEvaluatorFactories extension point would be sufficient for
this
specific purpose.
You just need to add a rule that evaluates structures like:
ClassRegistry::init('MyObject'), and returns type (MyObject) for such
cases.
Take a look at

org.eclipse.php.internal.core.typeinference.evaluators.InstanceCreationEvaluator
as an example, which evaluates structures like: new MyObject().

Best regards,
Michael

On Wed, Oct 28, 2009 at 1:03 PM,<robert@xxxxxxxxxxx>  wrote:

Hi all,

i'm trying to write an eclipse plugin for the Cakephp
framework, and i'd like to start off with some
additional framework-specific code assistance.

The framework uses a central "ClassRegistry" factory
for object instantiation. So, there's no "new" keyword for
some objects, for example:

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

Basically i would like to give a hint to PDT that
the variable "$myObject" is an instance of the "MyObject"
class, which has already been loaded into the PDT Model,
so i guess i would simply point to the "MyObject" IType in
the Model somehow.

Could anyone give me a hint what would be the best method
to accomplish this? I've already had a look at the extension
points "completionStrategyFactories"/"completionContextResolvers"
and "goalEvaluatorFactories", but i'm not sure what's the best
way to hook into PDT for this kind of thing.


Thanks!

-robert

_______________________________________________
pdt-dev mailing list
pdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/pdt-dev

_______________________________________________
pdt-dev mailing list
pdt-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/pdt-dev