ProxyManager icon indicating copy to clipboard operation
ProxyManager copied to clipboard

Move internal implementation from Zend\Code to PHP-Parser

Open Ocramius opened this issue 12 years ago • 9 comments

Moving to PHP-Parser will allow inlining of parent class code, therefore reducing linear overhead and allowing more performance optimizations.

Ocramius avatar Jun 04 '13 10:06 Ocramius

Clearing milestone: this won't happen for a while, since PHP-Parser is far from our needs right now

Ocramius avatar Jul 30 '14 09:07 Ocramius

:+1: omg, yes - please! Need help? ;-)

robfrawley avatar Apr 26 '15 06:04 robfrawley

@robfrawley fell free to send PRs :smile:

malukenho avatar Apr 26 '15 13:04 malukenho

I'm not sure if this is interesting/viable anymore.

There is no clear advantage in using PHP-Parser unless very obvious automated optimizations can be applied.

Ocramius avatar Apr 26 '15 21:04 Ocramius

Note: can easily be fixed if Roave/BetterReflection#39 is carefully checked

Ocramius avatar Jul 05 '15 22:07 Ocramius

I also working on parser-reflection, working concept is ready. Main feature: all classes will extend original ones, so all existing libraries can work with them. Initialization will be compatible too: new ParserReflection\ReflectionClass(SomeClass::class)

PS: discovered a bug in the PHP-Parser during the reflection implementation testing https://github.com/nikic/PHP-Parser/pull/209 )

lisachenko avatar Jul 06 '15 10:07 lisachenko

Yeap, BetterReflection does that as well, but @asgrim is pretty much working on it full time, so I suggest joining him on it ;-)

Marco Pivetta

http://twitter.com/Ocramius

http://ocramius.github.com/

On 6 July 2015 at 11:14, Alexander Lisachenko [email protected] wrote:

I also working on parser-reflection, working concept is ready. Main feature: all classes will extend original ones, so all existing libraries can work with them. Initialization will be compatible too: new ParserReflection\ReflectionClass(SomeClass::class)

— Reply to this email directly or view it on GitHub https://github.com/Ocramius/ProxyManager/issues/49#issuecomment-118797581 .

Ocramius avatar Jul 06 '15 10:07 Ocramius

Yeap, BetterReflection does that as well, but @asgrim is pretty much

No, according to the https://github.com/Roave/BetterReflection/blob/master/src/Reflection/ReflectionClass.php#L11, his classes don't extend original ones, just implements an interface which looks like reflection, so I can't accept this solution for my needs. I need to reflect code transparently, like traditional reflection classes do.

lisachenko avatar Jul 06 '15 10:07 lisachenko

@lisachenko I'm planning on creating an adapter to make this possible, see Roave/BetterReflection#18

asgrim avatar Jul 06 '15 10:07 asgrim