Oh, and Dawid, can you answer my post from gerrit? Ellipsis symbol "..." for unpacking is described as an operator and it is > how it behaves right now. But I also wasn't sure how it should be at the > end :) We can discuss this topic. >
Regarding finishing work with parser/formatter, was you talking about > importing function/const functionality or previous elements? At the moment > I have parser and formatter ready for new keywords (function and const) in > 'use' statement, but nothing more. I extended UseStatement node with > statement type field (like PrefixExpression) and I updated formatter with > this information (thses changes are not commited). Maybe we should use mail for discussion until gerrit notification will back :) Thanks, Michal On Wed, Oct 8, 2014 at 2:01 PM, Michał Niewrzał <[email protected]> wrote: > Unfortunately some extensions have newer versions, but it is not most > important thing at the moment. Later I will try update also reset of > extensions. > > Michal > > On Wed, Oct 8, 2014 at 1:50 PM, Dawid Pakuła <[email protected]> wrote: > >> Hi, >> >> Good catch! I reported an issue to webmaster [1]. >> >> For now if this is same version, I think you can copy/paste it from php55 >> model. >> >> [1] - https://bugs.eclipse.org/bugs/show_bug.cgi?id=446297 >> >> -- >> Dawid Pakuła >> +48 795 996 064 >> >> On 8 Oct 2014 at 13:30:33, Michał Niewrzał ([email protected]) wrote: >> >> I'm not receiving notifications from gerrit, so it is possible that >> nobody know about update:). I rebuild almost whole language model, I had >> some problems with database extensions like ibm_db2 (these extensions are >> not updated), but core elements and most of other elements are up to date. >> >> Michal >> >> On Fri, Oct 3, 2014 at 1:07 PM, Michał Niewrzał <[email protected]> >> wrote: >> >>> I updated previous patch with new functionality: >>> * Variadic Parameters >>> * Unpacking Arguments >>> >>> Git Commit: https://git.eclipse.org/r/#/c/33947/ >>> >>> Michal >>> >>> On Mon, Sep 29, 2014 at 4:59 PM, Dawid Pakuła <[email protected]> wrote: >>> >>>> Hi, >>>> >>>> On 29 września 2014 at 15:19:34, Michał Niewrzał ([email protected]) >>>> wrote: >>>> >>>> Hi, >>>> I started implementation of variadic parameters. Actually I'm not sure >>>> how exactly it should be done correctly, I don't know every part of PDT so >>>> it is hard to predict all implications. >>>> >>>> Probably none know now ;) >>>> >>>> I'm talking mainly about AST nodes structure. My first shot was to >>>> just extend FormalParameter with 'isVariadic' flag, but maybe it is to >>>> simple approach:) I will be grateful for every suggestion :) >>>> >>>> PHP 7 will introduce AST-based compilation, and as I see in parser >>>> [1] isReference and isVariadic are just a flags. So we can also use just a >>>> flag. >>>> >>>> We should remember about this flag in in TI, CA, Formatter and label >>>> providers. FormatParameter#isVariadic should simplify an access. >>>> >>>> But, if you introduce special field (like isOptional), you have to >>>> remember about ASTMatcher. >>>> >>>> [1] - >>>> https://github.com/php/php-src/blob/master/Zend/zend_language_parser.y#L546 >>>> >>>> >>>> >>>> Michal >>>> >>>> On Fri, Sep 26, 2014 at 12:23 PM, Michał Niewrzał <[email protected]> >>>> wrote: >>>> >>>>> 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 <[email protected]> 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 <[email protected]> >>>>>> 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ł <[email protected]> <[email protected]> >>>>>>> Reply: PDT Developers <[email protected]>> <[email protected]> >>>>>>> Date: 17 września 2014 at 23:53:02 >>>>>>> To: PDT Developers <[email protected]>> <[email protected]> >>>>>>> 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 >>>>>>> [email protected] >>>>>>> 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 >>>>>>> [email protected] >>>>>>> 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 >>>>>> [email protected] >>>>>> 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 >>>>>> [email protected] >>>>>> 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 >>>> [email protected] >>>> 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 >>>> [email protected] >>>> 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 >> [email protected] >> 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 >> [email protected] >> 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 [email protected] To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/pdt-dev
