Hi, I prepared first commit for PHP 5.6 support. It is just initial draft with 2 new elements: * Constant Scalar Expressions - https://wiki.php.net/rfc/const_scalar_exprs * Power Operator - https://wiki.php.net/rfc/pow-operator
These two elements can be tested already. Any feedback (positive or negative) is appreciated :) Git Commit: https://git.eclipse.org/r/#/c/33947/ BTW, Language model is still not regenerated. Is there a simple way to install all necessary extensions? I tried to install them with pecl, but it is pretty slow method :) Thanks, Michal On Mon, Sep 22, 2014 at 2:58 PM, Dawid Pakuła <zu...@w3des.net> wrote: > Hi, > > Hi, > I have some additional questions: > > 2. Generate code stubs and register it. Same for keywords > > Which part of code you are talking about exactly? > > See IPHPKeywordsInitializer and subclasses. > > Code stubs org.eclipse.php.core/Resources/language/php_ver (see README.txt > howto generate it). Remember to update DefaultLanguageModelProvider after > generation. > > 5. Copy/paste and extend parser. Current pdt parser are very close to >> original php parser, so their source code may be helpful + tests > > Can you point me place where I can find this original PHP parser? > > https://github.com/php/php-src/blob/PHP-5.6.1/Zend/zend_language_parser.y > > And one more question about generating language model. File "generate.php" > is generating code based on loaded extensions. Is there a list of modules > that need to be enabled during generation? > > This was my mistake while initial php 5.5 implementation. File names in > languages/php5.5 are your list. Module_name.php ;) > > > > Thanks, > Michal > > On Thu, Sep 18, 2014 at 12:12 AM, Dawid Pakuła <zu...@w3des.net> wrote: > >> Hi, >> >> most elements you will find in one commit : [1]. >> bug for php 5.6 is open [2] >> >> Steps: >> 1. Extend PHPVersion and where is used (projects wizard, project >> preferences and more…) >> 2. Generate code stubs and register it. Same for keywords >> 3. Copy/paste php 5.5 flexer and extend it. Two or three new tokens as I >> see(pow operator, variadic…) + tests >> 4. Create new AST nodes for DOM and Compiler tree >> 5. Copy/paste and extend parser. Current pdt parser are very close to >> original php parser, so their source code may be helpful + tests >> 6. Extend occurrences finder + tests >> 7. Extend formatter / syntax coloring + tests >> 8. Extend ASTMatcher + tests >> 9. Modify inference engine + tests >> 10. Modify CA + tests >> >> php 5.5 was in general easy to implement. >> With php 5.6 will be harder due new use function and use constant >> >> DLTK doesn’t allow to add additional informations to imports. Patch: [3] >> >> I hope it’s helpful. >> >> [1] - >> http://git.eclipse.org/c/pdt/org.eclipse.pdt.git/commit/?id=9034500b3b47f34efa42be4d8b18871d78493995 >> [2] - https://bugs.eclipse.org/bugs/show_bug.cgi?id=435922 >> [3] - https://bugs.eclipse.org/bugs/show_bug.cgi?id=437856 >> >> -- >> Dawid Pakuła >> +48 795 996 064 >> >> w3des.net >> ul. Grabiszyńska 108/10 >> 53-437 Wrocław >> NIP: 894-293-95-95 >> REGON: 340769757 >> >> From: Michał Niewrzał <micha...@zend.com> <micha...@zend.com> >> Reply: PDT Developers <pdt-dev@eclipse.org>> <pdt-dev@eclipse.org> >> Date: 17 września 2014 at 23:53:02 >> To: PDT Developers <pdt-dev@eclipse.org>> <pdt-dev@eclipse.org> >> Subject: [pdt-dev] PHP 5.6 support >> >> Hi All, >> We (Zend Studio team) begin to think about support for PHP 5.6. Of course >> we need to start from PDT. It looks that I will be person most involved >> from our team and I want to start this conversation with at least general >> idea what need to be done. I heard that previous version 5.5 was >> implemented mostly by Dawid:) Dawid, can you write short (I hope) list with >> PDT parts that needs to be adjusted/extended? >> >> Thanks, >> Michal >> _______________________________________________ >> pdt-dev mailing list >> pdt-dev@eclipse.org >> To change your delivery options, retrieve your password, or unsubscribe >> from this list, visit >> https://dev.eclipse.org/mailman/listinfo/pdt-dev >> >> >> _______________________________________________ >> pdt-dev mailing list >> pdt-dev@eclipse.org >> To change your delivery options, retrieve your password, or unsubscribe >> from this list, visit >> https://dev.eclipse.org/mailman/listinfo/pdt-dev >> > > _______________________________________________ > pdt-dev mailing list > pdt-dev@eclipse.org > To change your delivery options, retrieve your password, or unsubscribe > from this list, visit > https://dev.eclipse.org/mailman/listinfo/pdt-dev > > > _______________________________________________ > pdt-dev mailing list > pdt-dev@eclipse.org > To change your delivery options, retrieve your password, or unsubscribe > from this list, visit > https://dev.eclipse.org/mailman/listinfo/pdt-dev >
_______________________________________________ pdt-dev mailing list pdt-dev@eclipse.org To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/pdt-dev